External tools allow you to configure and run programs, batch files, Ant buildfiles, and others using the Workbench. You can save these external tool configurations and run them at a later time.
Output from external tools is displayed in the console view.
You can add external tools as part of the build process for a project. These external tools will run in the specified order every time a project is built.
The following variables are available when you configure an external tool. These variables are automatically expanded each time the external tool is run.
${workspace_loc} - The absolute path on the system's hard drive to Eclipse's workspace directory.
${workspace_loc:<resource path>} - The absolute path on the system's hard drive to the specified resource. The <resource path> is the full path of the resource relative to the workspace root. For example ${workspace_loc:/MyProject/MyFile.txt}. Note that the expanded result of this variable is not the same as ${workspace_loc}/MyProject/MyFile.txt if the project's contents directory for MyProject is outside the workspace directory.
${project_loc} - The absolute path on the system's hard drive to the currently selected resource's project or to the project being built if the external tool is run as part of a build.
${project_loc:<resource path>} - The absolute path on the system's hard drive to the specified resource's project. The <resource path> is the full path of the resource relative to the workspace root. For example ${workspace_loc:/MyProject/MyFile.txt}. Note that the expanded result of this variable is not the same as ${workspace_loc}/MyProject if the project's contents directory for MyProject is outside the workspace directory.
${container_loc} - The absolute path on the system's hard drive to the currently selected resource's parent (either a folder or project).
${container_loc:<resource path>} - The absolute path on the system's hard drive to the specified resource's parent (either a folder or project). The <resource path> is the full path of the resource relative to the workspace root. For example:${workspace_loc:/MyProject/MyFolder/MyFile.txt}. Note that the expanded result of this variable is not the same as ${workspace_loc}/MyProject/MyFolder if the project's contents directory for MyProject is outside the workspace directory.
${resource_loc} - The absolute path on the system's hard drive to the currently selected resource.
${resource_loc:<resource path>} - The absolute path on the system's hard drive to the specified resource. The <resource path> is the full path of the resource relative to the workspace root. For example ${workspace_loc:/MyProject/MyFile.txt}. Note that the expanded result of this variable is not the same as ${workspace_loc}/MyProject/MyFile.txt if the project's contents directory for MyProject is outside the workspace directory.
${project_path} - The full path, relative to the workspace root, of the currently selected resource's project or of the project being built if the external tool is run as part of a build.
${container_path} - The full path, relative to the workspace root, of the currently selected resource's parent (either a folder or project).
${resource_path} - The full path, relative to the workspace root, of the currently selected resource.
${project_name} - The name of the currently selected resource's project or of the project being built if the external tool is run as part of a build.
${container_name} - The name of the currently selected resource's parent (either a folder or project).
${resource_name} - The name of the currently selected resource.
${build_type} - The kind of build when the external tool is run as part of a build. The value can be one of "full", "incremental", or "auto". If the external tool is run outside of a build, the value is then "none".
Lets assume your Eclipse workspace directory is c:\eclipse\workspace
and you have two projects, MyProject1 and MyProject2. The first project,
MyProject1, is located inside the workspace directory, the second project,
MyProject2, is located outside the workspace directory at c:\projects\MyProject2.
Lets look at how the variable examples below will be expanded when an
external tool is run, if the resource /MyProject2/MyFolder/MyFile.txt is
selected.
|
|
${workspace_loc} | c:\eclipse\workspace |
${workspace_loc:/MyProject1/MyFile.txt} | c:\eclipse\workspace\MyProject\MyFile.txt |
${workspace_loc:/MyProject2/MyFile.txt} | c:\projects\MyProject2\MyFile.txt |
${project_loc} | c:\projects\MyProject2 |
${project_loc:/MyProject1/MyFile.txt} | c:\eclipse\workspace\MyProject |
${container_loc} | c:\projects\MyProject2\MyFolder |
${resource_loc} | c:\projects\MyProject2\MyFile.txt |
${project_path} | /MyProject2 |
${container_path} | /MyProject2/MyFolder |
${resource_path} | /MyProject2/MyFolder/MyFile.txt |
${project_name} | MyProject2 |
${container_name} | MyFolder |
${resource_name} | MyFile.txt |
${build_type} | none |
External Tools preferences
External Tools and Ant icons
Running external tools
Running Ant buildfiles