Part 6 of my Galileo Reviews around Target Platforms. An Overview of this blog series can be found here.
We finished part 5 with a Target Definition containing Plug-ins (bundles) from different kinds of locations:
Fine-tuning the Selection of Plug-ins
At the moment all Plug-ins from all added Locations are selected. You can display the Content together with your Locations on the first page checking “Show Plug-in content” …
… or you switch to the “Content” Tab where you have some more control.
You can check if Source Bundles should be shown or not and also group the content:
- Group by None (plain view, all Plug-ins sorted by ID)
- Group by Filepath
- Group by Location
And as usual there’s a Search field to make it easy to find Plug-ins:
But the most important is the little ckeckbox which allows you to
- Select Plug-ins
- Deselect Plug-ins
Now its easy for you to fine-tune your Plug-ins and save the selection in the Target Definition file.
There’s also the option to “Add Required” – you can test if after Selecting / Deselecting all Required Bundles are selected in your Target Definition.
Attention: this option perhaps Selects Plug-ins you Deselected before without giving you an information which Plug-ins are re- selected to fullfill the requirements !
Defining the Environment
Beside the “Content” tab there’s also an “Environment” tab:
If your Target Environment is the same as your IDE (running Host platform) is running from, then you can leave this empty.
But its usual that you have some different Environments where your product should run – even if you only develop for one OS.
per ex. under OSX you should test and run under JVM 5 cocoa 32-bit, JVM 5 cocoa 64-bit, JVM 6 cocoa 64-bit, JVM 5 carbon.
Its a good idea at first to start with the same Environment then your IDE is running and later duplicate the Target Definition file for different Environments.
Or another strategy could be to put all (OS – specific fragments etc) into one Target Platform Definition and have different Launch configurations using different Environments / Plug-ins / Fragments. But thats a story for another blog and outside of the “Galileo Review Scope”.
The only thing you should have in mind now:
- if the Environment is empty – the Environment from your running Host is used
- if you enter values for the Environment this will be used as initial values if you create new Launch Configurations
- In your Launch Configurations you can overwrite the values from your Target definition
Lets go back to the Preferences Page “Preferences -> Plug-in Development -> Target Platform“
Updating Plug-ins (bundles) of your Target Platform
The Preference Page shows the active and all available Target Platforms:
As you already learned you can add (and move) or remove Target Definitions from here.
Edit… is nearly the same then from the Target Definition Editor described above.
Hint: I had sometimes the problem, that my selections of Plug-ins were destroyed, esp. if using the search-field on the Contents page, but it wasn’t easy reproduceable. So its a good idea to have a backup or put the Target definitions under CVS – then its easy to compare and restore.
To see if there are newer versions of your Plug-ins you can start a “Reload…” – your Sources will be contacted and newer Plug-ins fetched. Double-clicking to Edit the Target Definition does the same job.
But this works only, if its the same version and only the Qualifier changed. This means its great and easy to use if you always need the newest I-Build of the same Version.
If you need a new Version (Update), then you should duplicate the Target Definition (do this in your Workspace project), change the title and name to reflect the new version and select the Plug-ins with the new Version or choose another Software Site or Directory. Then its also easy to test per ex. 1.0.0.M1 and 1.0.0.M2 by switching the active Target Platform from Preferences.
The next part of my blog series will explain you all the new cool views of Eclipse 3.5 helping you to get more informations about the Plug-ins from IDE and Target Platform.