Local Navigation

Using Links to Install PHP Development Tools (PDT) in Rational Application Developer / Eclipse

Summary

This post is mainly of interest to developers who use Eclipse, especially IBM/Rational Branded versions.

The web-based software updates/find and install features of Eclipse have significant problems resolving dependencies for additional plugins, at least in the IBM branded versions. You can work around these difficulties and bring more order and control to your installation by using the links based mechanism described below

Overall Issue

Eclipse provides an attractive web-based mechanism for installing updates, located under the Help menu. When everything goes well a developer will:

1. Select Software updates/Find and Install
2. Enter the URL of the web site for the project supporting the particular feature desired
3. Click and see features available
4. Select desired features and update

The mechanism carefully checks dependencies. With the IBM distributions there seems to be a high rate of false positives ... that is, dependencies which are satisfied are flagged as unsatisfied. I haven't checked the pure Eclipse distributions for this, so can't say whether the problem is IBM specific.

Of course you can always manually install the features desired, but this involves dumping many, many files and folders into your one and only "plugins" and "features" folder, which risks corrupting your entire install.

Links as a Solution

After quite some time of struggling with the problem, including multiple searches including developerworks, I ran across this post from Michael Moser, who documented a way to quickly include plugins and features into Eclipse in a modular manner. This might be well-known, but it was new to me and not well-reflected on the obvious Googles, so I'm taking the liberty of documenting it a little more.

The capability of including indirect references to features appears to be built into Eclipse, at least for Callisto (3.2) and beyond. The IBM Tools are at the Callisto level as of this posting date.

The gist of the feature is that you can:

1. Create a new directory called links in your root Eclipse directory. Note that IBM doesn't clearly identify the root Eclipse directory; in the case of RSA 7, for example, the directory defaults to

C:\Program Files\IBM\SDP70

on Windows, and an equivalent in Linux, so in such a case your (Windows) new directory would be called

C:\Program Files\IBM\SDP70\links

2. In the links directory create a file for each desired feature. The file must end in the extension (Linux too!) .link. The file can have any name you want -- be descriptive -- but must end correctly. For example I installed the PHP Development Tools (PDT) using a file called:

C:\Program Files\IBM\SDP70\links\PDT.link

3. Anywhere on disk (I used the Eclipse Directory) create a folder to hold your features. Let's refer to this folder as the custom folder. Mine is called

C:\Program Files\IBM\SDP70\rpc_custom

4. Create a directory in the custom folder for each desired feature. You can have multiple names for multiple versions of a feature and nearly any name will do. For example, I created a folder to hold the January 2006 (Callisto-related) build of PDT called:

C:\Program Files\IBM\SDP70\rpc_custom\PDT-Jan07

5. Download your feature, and unzip it into the directory. Again in the PDT case I downloaded the January Release of PDT as

pdt-all-in-one-S20070130_RC2-win32.zip

and unzipped it into

C:\Program Files\IBM\SDP70\rpc_custom\PDT-Jan07

6. Now, watch for the gotcha. Using forward slashes, place the path to your directory in the .link file you created in step 2 in the format below:

path=C:/Program Files/IBM/SDP70/rpc_custom/TPTP-Platform

Please note the forward slashes.

7. Startup Eclipse and ensure that your plugin made it in alive. To do this:

  • Select Help, then About [Whatever Product you have]. Mine says

    About Rational Software Architect

  • b. Click Feature Details or Plugin Details
  • c. Browse down to the feature or plugin of interest.

Comments

More documentation on links

Here's another great post on the links feature, with pix