Path variables specify locations on the file system. The location of linked resources may be specified relative to these path variables. They allow you to avoid references to a fixed location on your file system.
By using a path variable, you can share projects containing linked resources with team members without requiring the exact same directory structure as on your file system.
Path variables can be either defined at the project level or at the workspace level. Creating path variables at the project level ensures that projects that contain linked resources using those path variables remain portable across workspace and computers.
Each project contain a pre-defined set of path variables available for defining linked resources, including ECLIPSE_HOME, PARENT_LOC, PROJECT_LOC and WORKSPACE_LOC.
New path variables can be defined relative to existing path variables by using the ${VAR} syntax. For example, a path variable FOO can be defined relative to BAR by defining it to "${BAR}../foo".
You can load a project that uses path variables even if you do not currently have all the path variables defined in the project or workspace. A linked resource that uses a missing path variable is flagged using a special decorator icon. In addition, the File > Properties > Resource property page and the Properties view ( Window > Show View > Other... > General > Properties) for a linked resource indicate the variable and whether it is defined or not. A path variable can also specify a location that does not currently exist on the file system. Linked resources that use such a path variable are indicated using the same decorator icon mentioned above.
You can create new path variables and edit and remove existing path variables in the File > Properties > Resource > Linked Resources property page for a project resource and at the workspace level on the General > Workspace > Linked Resources preference page.