Monday, February 20, 2012

eclipse RCP product - custom config.ini


My eclipse RCP (3.7) application is currently in a good shape, in which product can be exported successfully for multiple platforms and runs just fine. What I need is to change some properties in config.ini file, in particular osgi.instance.area.default and osgi.configuration.area .



In the configuration tab of eclipse product editor, I check Use an existing config.ini file and select the config.ini I created inside the same project hosting the product (and the core feature) definition.



To create the custom config.ini, I just took the one generated in a previous export, and added above properties.



What happens is that after exporting the product, config.ini is still auto-generated in configuration/config.ini , without my edits. What am I missing?



This is how my product definition looks like:




<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="MyApp" id="it.myapp.product" application="it.myapp.application" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">

<configIni use="default">
<linux>/it.myapp.app/config.ini</linux>
<macosx>/it.myapp.app.app/config.ini</macosx>
<solaris>/it.myapp.app.app/config.ini</solaris>
<win32>/it.myapp.app/config.ini</win32>
</configIni>

<launcherArgs>
<programArgs>-nl it</programArgs>
<vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
</launcherArgs>

<windowImages />

<splash
location="it.myapp"
startupProgressRect="6,378,485,13"
startupMessageRect="7,397,445,22"
startupForegroundColor="000000" />
<launcher name="myapp">[...]</launcher>

<vm>
</vm>

<plugins>
<plugin id="com.ibm.icu"/>
[...]
<plugin id="org.sat4j.pb"/>
</plugins>

<features>
<feature id="it.myapp.feature"/>
</features>

<configurations>
<plugin id="it.myapp" autoStart="false" startLevel="5" />
<plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
</configurations>

</product>

1 comment:

  1. You are not missing anything - this just does not work. I experienced the same. You can try upgrading to a more recent version of Eclipse which hopefully has this function working.

    See: https://bugs.eclipse.org/bugs/show_bug.cgi?id=284732

    I suggest to work around this by using root-properties:

    Eclipse RCP root-properties

    ReplyDelete