Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin


titleCheck Your Eclipse Workspace

Tool templates are taken from the Eclipse workspace, you will need at least one of these projects in the workspace along with the LAMS core projects for the Toolbuilder to work.

Configure your cvs client as follows to download the LAMS tools:

  • access method: pserveruser
  • name: anonymous
  • server name:
  • location: /usr/local/cvsroot


  1. (Recommended) Download using EclpseEclipse's inbuild inbuilt plug-in download manager.
  2. Download the binary, then manually copy the jar into the Eclipse plugin directory.


To install using  the second method, please follow these steps (WARNING, this method does not ensure successful installation because of dependanciesdependencies).

  1. Download the org.lams.toolbuilder_1.0.x.jar binary.
  2. If Eclipse is running, shut it down.
  3. Copy org.lams.toolbuilder_1.0.x.jar to the eclipse/plugins directory of your Eclipse installation.
  4. Restart Eclipse. The tool should now appear in the list of available plugins.


     6.  Enter the new project name, this will be the name of the folder that contains the LAMS tool project in eclipse, for example lams_tool_forum
     7.  Enter the tool signature, the tool signature should follow the form prescribed here.
     8.  Enter your tool name, this will be used to translate the files in your chosen template.
     9.  Enter the vendor, this can be the organisation you work for or your name, or whatever you choose to call it. Note that if you change the vender name from lamsfoundation, you will need to edit the beanRefContext.xml and commonContext.xml in lams_common/src/java/org/lamsfoundation/lams to point to your tool. In beanRefContext.xml there is a line like this:

No Format


add another line like this replacing "lamsfoundation" with your vendor. In commonContext.xml you will find a like like this:

No Format


again add another line like this replacing "lamsfoundation" with your vendor.
   10.  Enter the tool version, this is an 8-digit number representing the date of tool creation in the form YYYYMMDD
   11.  Enter the minimum LAMS server version, if your tool requires a certain version of LAMS, be sure to enter it here.
   12.  Select the type of tool you wish to make, LAMS or RAMS.
   13.  If you don't want the tool to be displayed as a standalone tool in author or learner, select no in the 'Make Tool Visible' box.
   14.  Clicking 'finish' will start the project creation process, this should take a few moments to finish.


Once you have successfully deployed the LAMS core code, you can then run the 'deploy-tool' task from your new tool's build.xml file.

Known issues

The Tool Builder is designed to get you started with tool development. It doesn't promise to give you a 100% working tool out of the box. As we find issues, we will note them here.

  • Copying the share resources tool. When you add a new item (in authoring) it may throw a Javascript error like "submit<tooldesc>Item is not defined". This is because the file rsrc<tooldesc>Item.js hasn't been renamed to match references to it in the .jsp files. You will probably have another javascript error telling you that a file cannot be found - that is the expected name for the rsrc<tooldesc>Item.js. So rename the file and it should work.


If this doesn't work for you, you can use good old unix commands to rename an existing tool and start from scratch.

Code Block

# Renaming the lams_tool_bbb tool in a new tool called XYZ

 find . -name *.java -print0| xargs -0 sed -i 's/Bbb/Xyz/g'
 find . -name *.sql -print0| xargs -0 sed -i 's/Bbb/Xyz/g'
 find . -name *.xml -print0| xargs -0 sed -i 's/Bbb/Xyz/g'
 find . -name *.jsp -print0| xargs -0 sed -i 's/Bbb/Xyz/g'
 find . -name *.properties -print0| xargs -0 sed -i 's/Bbb/Xyz/g'
 find . -name *.MF -print0| xargs -0 sed -i 's/Bbb/Xyz/g'

 find . -name *.java -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.sql -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.xml -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.jsp -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.properties -print0| xargs -0 sed -i 's/bbb/xyz/g'

 find . -name *.project -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.mymetadata -print0| xargs -0 sed -i 's/bbb/xyz/g'
 find . -name *.MF -print0| xargs -0 sed -i 's/bbb/xyz/g'

# Renaming file names

find .  -type d -print0| xargs -0 rename 's/bbb/xyz/g'
find .  -type f -print0| xargs -0 rename 's/bbb/xyz/g'
find .  -type f -print0| xargs -0 rename 's/Bbb/Xyz/