Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Plugin Development Environment (PDE) » 3.5M7 - Problem setting transform start levels
3.5M7 - Problem setting transform start levels [message #59523] Mon, 04 May 2009 18:29 Go to next message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
We build our _feature-based_ RCP product based on SDK headlessly as in
http://aniefer.blogspot.com/2008/06/example-headless-build-f or-rcp-product.html.
We have transform plugins o.ee.eq.transforms.xslt.plugin and
o.e.eq.transforms.xslt and set the start level to @1:start explicitly in
config.ini,osgi.bundles after the build.

I really want to avoid editing config.ini, so looked forward to 3.5M7 and
support for setting start level in the Product file. I was encouraged to
see that in the Product editor, Configuration tab, I can now select the
transform plugins, an advance over 3.5M6. However, I can't actually edit
start level or autostart. The GUI just does not accept editing attempts.

Furthermore, if I enter the start level data directly into the Product
file, the Product fails to start with error: "IllegalStateException:
Unable to acquire application service. Ensure that the
org.eclipse.core.runtime bundle is resolved and started (see config.ini)".

What I see in config.ini for a successful 3.5M6 build (including my edits):
osgi.bundles=org.eclipse.equinox.transforms.xslt@1:start,org.eclipse.equinox.transforms.xslt.plugin@1:start,reference\:file\:org.eclipse.equinox.ds_1.1.0.v20090429-1630.jar@1\:start,reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start

In 3.5M7, with start level added to Product file and no longer making my
edits:
osgi.bundles=reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start

So, no transforms and o.e.eq.ds is gone!

What if anything, can I do to have PDE Build set transform start levels
correctly?
Re: 3.5M7 - Problem setting transform start levels [message #59549 is a reply to message #59523] Mon, 04 May 2009 19:09 Go to previous messageGo to next message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> In 3.5M7, with start level added to Product file and no longer making my
> edits:
> osgi.bundles=reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start
>
> So, no transforms and o.e.eq.ds is gone!
> What if anything, can I do to have PDE Build set transform start levels
> correctly?

It should work!

What does your product definition look like, can you post it?

If simpleconfigurator is there, that's fine. That means you're using p2
to manage your application (one of your features must have p2 included).
p2 works off a bundles.info file and lists all the proper start
information there. grep for the bundles.info file to see ;)

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #59573 is a reply to message #59549] Mon, 04 May 2009 20:04 Go to previous messageGo to next message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Thanks, Chris.
I can work around the editing problem in the Configuration tab if I Add...
and immediately edit each plugin. If I have multiple plugins in the list,
I can not edit them.

Bundles.info looks like it has the correct start level and auto-start for
each plugin, but I still get fatal startup errors, even when I put
o.e.eq.ds and o.e.eq.util in Product, Configuration. Error log, Product,
and config.ini files follow.

The "missing constraint" problem started in 3.5M5 but did not seem to
interfere with actually running. No luck so far avoiding it. The
IllegalStateException, however, is fatal. Any diagnostics would be welcome!

MSacarny



Error log:
!ENTRY org.eclipse.equinox.ds 4 0 2009-05-04 15:44:47.788
!MESSAGE
!STACK 0
org.osgi.framework.BundleException: The bundle could not be resolved.
Reason: Missing Constraint: Import-Package:
org.eclipse.equinox.internal.util.event; version="1.0.0"
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.getR esolverError(AbstractBundle.java:1313)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.getR esolutionFailureException(AbstractBundle.java:1297)
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWor ker(BundleHost.java:309)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.resu me(AbstractBundle.java:370)
at
org.eclipse.osgi.framework.internal.core.Framework.resumeBun dle(Framework.java:1068)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.r esumeBundles(StartLevelManager.java:557)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.i ncFWSL(StartLevelManager.java:464)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.d oSetStartLevel(StartLevelManager.java:248)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.d ispatchEvent(StartLevelManager.java:445)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEve nt(EventManager.java:220)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread .run(EventManager.java:330)

!ENTRY org.eclipse.osgi 4 0 2009-05-04 15:44:49.710
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service.
Ensure that the org.eclipse.core.runtime bundle is resolved and started
(see config.ini).
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:74)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:368)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

And here is the (name-changed) Product file:
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="MyProduct++" id="com.analog.myproduct.product"
application="org.eclipse.ui.ide.workbench" version="1.0.0.vqualifier"
useFeatures="true" includeLaunchers="true">

<aboutInfo>
<image path="/com.analog.myproduct/icons/idde48_32.gif"/>
<text>
Analog Devices MyProduct++
</text>
</aboutInfo>

<configIni use="default">
</configIni>

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

<windowImages i16="/com.analog.myproduct/icons/idde16_8.gif"
i32="/com.analog.myproduct/icons/idde32_8.gif"
i48="/com.analog.myproduct/icons/idde48_8.gif"/>

<splash
startupProgressRect="10,328,580,15"
startupMessageRect="10,348,580,20"
startupForegroundColor="FFFFFF" />
<launcher name="myproduct">
<solaris/>
<win useIco="true">
<ico path="/com.analog.myproduct/icons/idde_eclipse.ico"/>
<bmp/>
</win>
</launcher>

<vm>
</vm>

<plugins>
</plugins>

<features>
<feature id="com.analog.myproduct"/>
<feature id="org.eclipse.rcp"/>
<feature id="org.eclipse.equinox.p2.user.ui"/>
<feature id="org.eclipse.platform"/>
<feature id="org.eclipse.cdt.platform"/>
<feature id="org.eclipse.cvs"/>
<feature id="org.eclipse.help"/>
<feature id="org.eclipse.equinox.executable"/>
</features>

<configurations>
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1"
/>
<plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt.plugin"
autoStart="true" startLevel="1" />
<plugin id="org.eclipse.equinox.util" autoStart="true"
startLevel="1" />
</configurations>

</product>

config.ini file:
org.eclipse.update.reconcile=false
eclipse.p2.profile=myproductProfile
osgi.framework=file\:plugins/org.eclipse.osgi_3.5.0.v2009042 9-1630.jar
osgi.bundles=reference\:file\:org.eclipse.equinox.ds_1.1.0.v20090429-1630.jar@1\:start,reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start
org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.e clipse.equinox.simpleconfigurator/bundles.info
eclipse.product=com.analog.myproduct.product
osgi.splashPath=platform\:/base/plugins/com.analog.myproduct
osgi.framework.extensions=reference\:file\:org.eclipse.equin ox.transforms.hook_1.0.100.v200905041540.jar
osgi.bundles.defaultStartLevel=4
eclipse.p2.data.area=@config.dir/../p2/
eclipse.application=org.eclipse.ui.ide.workbench
osgi.instance.area.default=@user.home/myproduct
osgi.configuration.cascaded=false
Re: 3.5M7 - Problem setting transform start levels [message #59598 is a reply to message #59573] Mon, 04 May 2009 21:43 Go to previous messageGo to next message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Thanks, Chris.
> I can work around the editing problem in the Configuration tab if I
> Add... and immediately edit each plugin. If I have multiple plugins in
> the list, I can not edit them.
>
> Bundles.info looks like it has the correct start level and auto-start
> for each plugin, but I still get fatal startup errors, even when I put
> o.e.eq.ds and o.e.eq.util in Product, Configuration. Error log, Product,
> and config.ini files follow.
>
> The "missing constraint" problem started in 3.5M5 but did not seem to
> interfere with actually running. No luck so far avoiding it. The
> IllegalStateException, however, is fatal. Any diagnostics would be welcome!
>

You're missing the start levels for important bundles ;)

For example, core.runtime and equinox.common should be listed. One way
to know what bundles should be included is creating a new product
definition, and in the wizard, there's an option to use an existing
launch configuration. Choose the launch configuration that you have been
using to self-host, that should properly populate your list of start
levels. You can reuse that list where you see fit. From the top of my
head, you're missing core.runtime and equinox.common

Another issue you have is that I see 'vqualifier' in the product
definition where you should mean 'qualifier'

Does that help a bit?

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #59621 is a reply to message #59573] Tue, 05 May 2009 00:27 Go to previous messageGo to next message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Thanks, Chris.

I also realized that you shouldn't need to start equinox.util, you can
remove that one from the list and simply use equinox.ds along with your
other bundles like xslt, core.runtime, equinox.common etc...

Cheers,
Re: 3.5M7 - Problem setting transform start levels [message #59693 is a reply to message #59598] Tue, 05 May 2009 17:52 Go to previous messageGo to next message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Chris,
Making progress. When I create a Product file from a Launch Config, I get
this in Product.xml:
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true"
startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true"
startLevel="2" />
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1"
/>
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt.plugin"
autoStart="true" startLevel="1" />
<plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
<plugin id="org.eclipse.update.configurator" autoStart="true"
startLevel="3" />
</configurations>

At runtime, though, there is a failure because start level is not a
positive number:

!ENTRY org.eclipse.osgi 4 0 2009-05-05 13:42:19.921
!MESSAGE Startup error
!STACK 1
java.lang.IllegalArgumentException: The requested start level of 0 is
invalid. The value must be a positive integer.

If I set o.e.core.runtime to 4, then the Product starts right up!
1) Is there a 'correct' way to set o.e.core.runtime to start level =
default, autostart=true in the Product file?
2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false' and
'osgi.instance.area.default=<folder>' in Product or other source level
files? I want to avoid having to edit the config.ini post-build.

Thanks greatly!
MSacarny
Re: 3.5M7 - Problem setting transform start levels [message #59717 is a reply to message #59693] Tue, 05 May 2009 21:14 Go to previous messageGo to next message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Chris,
> Making progress. When I create a Product file from a Launch Config, I
> get this in Product.xml:
> <configurations>
> <plugin id="org.eclipse.core.runtime" autoStart="true"
> startLevel="0" />
> <plugin id="org.eclipse.equinox.common" autoStart="true"
> startLevel="2" />
> <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.equinox.simpleconfigurator"
> autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
> startLevel="1" />
> <plugin id="org.eclipse.equinox.transforms.xslt.plugin"
> autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
> <plugin id="org.eclipse.update.configurator" autoStart="true"
> startLevel="3" />
> </configurations>
>
> At runtime, though, there is a failure because start level is not a
> positive number:
>
> !ENTRY org.eclipse.osgi 4 0 2009-05-05 13:42:19.921
> !MESSAGE Startup error
> !STACK 1
> java.lang.IllegalArgumentException: The requested start level of 0 is
> invalid. The value must be a positive integer.
>
> If I set o.e.core.runtime to 4, then the Product starts right up! 1) Is
> there a 'correct' way to set o.e.core.runtime to start level = default,
> autostart=true in the Product file?
> 2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false'
> and 'osgi.instance.area.default=<folder>' in Product or other source
> level files? I want to avoid having to edit the config.ini post-build.

core.runtime should have a startlevel of 4

you shouldn't list org.eclipse.osgi at all

I would also remove update.configurator from that list

That should work.

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #59788 is a reply to message #59717] Wed, 06 May 2009 18:25 Go to previous messageGo to next message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Chris,
I think that did it. I'm up and running now. Thanks for your help!

Should I enter bugs on problems with the Configuration dialog?
a) Unable to edit entries except right after Add...
b) "Default" start level caused startup errors (non-zero value expected).

MSacarny
Re: 3.5M7 - Problem setting transform start levels [message #59834 is a reply to message #59788] Wed, 06 May 2009 22:36 Go to previous messageGo to next message
Andrew Niefer is currently offline Andrew NieferFriend
Messages: 990
Registered: July 2009
Senior Member
msacarny wrote:
> Should I enter bugs on problems with the Configuration dialog?
> a) Unable to edit entries except right after Add...
There is https://bugs.eclipse.org/bugs/show_bug.cgi?id=274889

> b) "Default" start level caused startup errors (non-zero value expected).
There is https://bugs.eclipse.org/bugs/show_bug.cgi?id=274901
This is fixed for RC1.

> 2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false'
> and 'osgi.instance.area.default=<folder>' in Product or other source
> level files? I want to avoid having to edit the config.ini post-build.

PDE/Build (and the publisher) support properties in the .product file,
there is no UI for setting them (and I'm not even sure if the UI will
preserve them if you edit the file after adding them manually).

The syntax is <property> elements inside <configurations>
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true"
startLevel="4" />
......
<property name="org.eclipse.update.reconcile" value="false" />

<property name="osgi.configuration.cascaded" value="false" />
<property name="osgi.instance.area.default"
value="@user.home/workspace"/>
</configurations>

-Andrew
Re: 3.5M7 - Problem setting transform start levels [message #60139 is a reply to message #59834] Thu, 07 May 2009 12:38 Go to previous message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Andrew,
I just tried adding Properties to the <configurations> sections and sadly
they do not survive a change to the Configurations, Plugins list.

However, this seems to work for me when in the Launching, VM Arguments
list:
-Dosgi.instance.area.default=@user.home/myproduct${#32}myrel ease
-Dosgi.configuration.cascaded=false

The ${#32} was the only way I could find that preserved the space in the
default path in launcher.ini\config.ini without resulting in path-breaking
carriage returns, extra double quotes, or duplicated entries.

Regards,
MSacarny
Re: 3.5M7 - Problem setting transform start levels [message #596767 is a reply to message #59523] Mon, 04 May 2009 19:09 Go to previous message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> In 3.5M7, with start level added to Product file and no longer making my
> edits:
> osgi.bundles=reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start
>
> So, no transforms and o.e.eq.ds is gone!
> What if anything, can I do to have PDE Build set transform start levels
> correctly?

It should work!

What does your product definition look like, can you post it?

If simpleconfigurator is there, that's fine. That means you're using p2
to manage your application (one of your features must have p2 included).
p2 works off a bundles.info file and lists all the proper start
information there. grep for the bundles.info file to see ;)

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #596771 is a reply to message #59549] Mon, 04 May 2009 20:04 Go to previous message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Thanks, Chris.
I can work around the editing problem in the Configuration tab if I Add...
and immediately edit each plugin. If I have multiple plugins in the list,
I can not edit them.

Bundles.info looks like it has the correct start level and auto-start for
each plugin, but I still get fatal startup errors, even when I put
o.e.eq.ds and o.e.eq.util in Product, Configuration. Error log, Product,
and config.ini files follow.

The "missing constraint" problem started in 3.5M5 but did not seem to
interfere with actually running. No luck so far avoiding it. The
IllegalStateException, however, is fatal. Any diagnostics would be welcome!

MSacarny



Error log:
!ENTRY org.eclipse.equinox.ds 4 0 2009-05-04 15:44:47.788
!MESSAGE
!STACK 0
org.osgi.framework.BundleException: The bundle could not be resolved.
Reason: Missing Constraint: Import-Package:
org.eclipse.equinox.internal.util.event; version="1.0.0"
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.getR esolverError(AbstractBundle.java:1313)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.getR esolutionFailureException(AbstractBundle.java:1297)
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWor ker(BundleHost.java:309)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.resu me(AbstractBundle.java:370)
at
org.eclipse.osgi.framework.internal.core.Framework.resumeBun dle(Framework.java:1068)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.r esumeBundles(StartLevelManager.java:557)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.i ncFWSL(StartLevelManager.java:464)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.d oSetStartLevel(StartLevelManager.java:248)
at
org.eclipse.osgi.framework.internal.core.StartLevelManager.d ispatchEvent(StartLevelManager.java:445)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEve nt(EventManager.java:220)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread .run(EventManager.java:330)

!ENTRY org.eclipse.osgi 4 0 2009-05-04 15:44:49.710
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service.
Ensure that the org.eclipse.core.runtime bundle is resolved and started
(see config.ini).
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:74)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:368)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

And here is the (name-changed) Product file:
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="MyProduct++" id="com.analog.myproduct.product"
application="org.eclipse.ui.ide.workbench" version="1.0.0.vqualifier"
useFeatures="true" includeLaunchers="true">

<aboutInfo>
<image path="/com.analog.myproduct/icons/idde48_32.gif"/>
<text>
Analog Devices MyProduct++
</text>
</aboutInfo>

<configIni use="default">
</configIni>

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

<windowImages i16="/com.analog.myproduct/icons/idde16_8.gif"
i32="/com.analog.myproduct/icons/idde32_8.gif"
i48="/com.analog.myproduct/icons/idde48_8.gif"/>

<splash
startupProgressRect="10,328,580,15"
startupMessageRect="10,348,580,20"
startupForegroundColor="FFFFFF" />
<launcher name="myproduct">
<solaris/>
<win useIco="true">
<ico path="/com.analog.myproduct/icons/idde_eclipse.ico"/>
<bmp/>
</win>
</launcher>

<vm>
</vm>

<plugins>
</plugins>

<features>
<feature id="com.analog.myproduct"/>
<feature id="org.eclipse.rcp"/>
<feature id="org.eclipse.equinox.p2.user.ui"/>
<feature id="org.eclipse.platform"/>
<feature id="org.eclipse.cdt.platform"/>
<feature id="org.eclipse.cvs"/>
<feature id="org.eclipse.help"/>
<feature id="org.eclipse.equinox.executable"/>
</features>

<configurations>
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1"
/>
<plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt.plugin"
autoStart="true" startLevel="1" />
<plugin id="org.eclipse.equinox.util" autoStart="true"
startLevel="1" />
</configurations>

</product>

config.ini file:
org.eclipse.update.reconcile=false
eclipse.p2.profile=myproductProfile
osgi.framework=file\:plugins/org.eclipse.osgi_3.5.0.v2009042 9-1630.jar
osgi.bundles=reference\:file\:org.eclipse.equinox.ds_1.1.0.v20090429-1630.jar@1\:start,reference\:file\: org.eclipse.equinox.simpleconfigurator_1.0.100.v20090429-212 6.jar @1\:start
org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.e clipse.equinox.simpleconfigurator/bundles.info
eclipse.product=com.analog.myproduct.product
osgi.splashPath=platform\:/base/plugins/com.analog.myproduct
osgi.framework.extensions=reference\:file\:org.eclipse.equin ox.transforms.hook_1.0.100.v200905041540.jar
osgi.bundles.defaultStartLevel=4
eclipse.p2.data.area=@config.dir/../p2/
eclipse.application=org.eclipse.ui.ide.workbench
osgi.instance.area.default=@user.home/myproduct
osgi.configuration.cascaded=false
Re: 3.5M7 - Problem setting transform start levels [message #596782 is a reply to message #59573] Mon, 04 May 2009 21:43 Go to previous message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Thanks, Chris.
> I can work around the editing problem in the Configuration tab if I
> Add... and immediately edit each plugin. If I have multiple plugins in
> the list, I can not edit them.
>
> Bundles.info looks like it has the correct start level and auto-start
> for each plugin, but I still get fatal startup errors, even when I put
> o.e.eq.ds and o.e.eq.util in Product, Configuration. Error log, Product,
> and config.ini files follow.
>
> The "missing constraint" problem started in 3.5M5 but did not seem to
> interfere with actually running. No luck so far avoiding it. The
> IllegalStateException, however, is fatal. Any diagnostics would be welcome!
>

You're missing the start levels for important bundles ;)

For example, core.runtime and equinox.common should be listed. One way
to know what bundles should be included is creating a new product
definition, and in the wizard, there's an option to use an existing
launch configuration. Choose the launch configuration that you have been
using to self-host, that should properly populate your list of start
levels. You can reuse that list where you see fit. From the top of my
head, you're missing core.runtime and equinox.common

Another issue you have is that I see 'vqualifier' in the product
definition where you should mean 'qualifier'

Does that help a bit?

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #596790 is a reply to message #59573] Tue, 05 May 2009 00:27 Go to previous message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Thanks, Chris.

I also realized that you shouldn't need to start equinox.util, you can
remove that one from the list and simply use equinox.ds along with your
other bundles like xslt, core.runtime, equinox.common etc...

Cheers,
Re: 3.5M7 - Problem setting transform start levels [message #596820 is a reply to message #59598] Tue, 05 May 2009 17:52 Go to previous message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Chris,
Making progress. When I create a Product file from a Launch Config, I get
this in Product.xml:
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true"
startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true"
startLevel="2" />
<plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1"
/>
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
startLevel="1" />
<plugin id="org.eclipse.equinox.transforms.xslt.plugin"
autoStart="true" startLevel="1" />
<plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
<plugin id="org.eclipse.update.configurator" autoStart="true"
startLevel="3" />
</configurations>

At runtime, though, there is a failure because start level is not a
positive number:

!ENTRY org.eclipse.osgi 4 0 2009-05-05 13:42:19.921
!MESSAGE Startup error
!STACK 1
java.lang.IllegalArgumentException: The requested start level of 0 is
invalid. The value must be a positive integer.

If I set o.e.core.runtime to 4, then the Product starts right up!
1) Is there a 'correct' way to set o.e.core.runtime to start level =
default, autostart=true in the Product file?
2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false' and
'osgi.instance.area.default=<folder>' in Product or other source level
files? I want to avoid having to edit the config.ini post-build.

Thanks greatly!
MSacarny
Re: 3.5M7 - Problem setting transform start levels [message #596840 is a reply to message #59693] Tue, 05 May 2009 21:14 Go to previous message
Chris Aniszczyk is currently offline Chris AniszczykFriend
Messages: 674
Registered: July 2009
Senior Member
msacarny wrote:
> Chris,
> Making progress. When I create a Product file from a Launch Config, I
> get this in Product.xml:
> <configurations>
> <plugin id="org.eclipse.core.runtime" autoStart="true"
> startLevel="0" />
> <plugin id="org.eclipse.equinox.common" autoStart="true"
> startLevel="2" />
> <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.equinox.simpleconfigurator"
> autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.equinox.transforms.xslt" autoStart="true"
> startLevel="1" />
> <plugin id="org.eclipse.equinox.transforms.xslt.plugin"
> autoStart="true" startLevel="1" />
> <plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
> <plugin id="org.eclipse.update.configurator" autoStart="true"
> startLevel="3" />
> </configurations>
>
> At runtime, though, there is a failure because start level is not a
> positive number:
>
> !ENTRY org.eclipse.osgi 4 0 2009-05-05 13:42:19.921
> !MESSAGE Startup error
> !STACK 1
> java.lang.IllegalArgumentException: The requested start level of 0 is
> invalid. The value must be a positive integer.
>
> If I set o.e.core.runtime to 4, then the Product starts right up! 1) Is
> there a 'correct' way to set o.e.core.runtime to start level = default,
> autostart=true in the Product file?
> 2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false'
> and 'osgi.instance.area.default=<folder>' in Product or other source
> level files? I want to avoid having to edit the config.ini post-build.

core.runtime should have a startlevel of 4

you shouldn't list org.eclipse.osgi at all

I would also remove update.configurator from that list

That should work.

Cheers,

Chris Aniszczyk | EclipseSource Austin | +1 860 839 2465
http://twitter.com/eclipsesource | http://twitter.com/caniszczyk
Re: 3.5M7 - Problem setting transform start levels [message #596862 is a reply to message #59717] Wed, 06 May 2009 18:25 Go to previous message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Chris,
I think that did it. I'm up and running now. Thanks for your help!

Should I enter bugs on problems with the Configuration dialog?
a) Unable to edit entries except right after Add...
b) "Default" start level caused startup errors (non-zero value expected).

MSacarny
Re: 3.5M7 - Problem setting transform start levels [message #596879 is a reply to message #59788] Wed, 06 May 2009 22:36 Go to previous message
Andrew Niefer is currently offline Andrew NieferFriend
Messages: 990
Registered: July 2009
Senior Member
msacarny wrote:
> Should I enter bugs on problems with the Configuration dialog?
> a) Unable to edit entries except right after Add...
There is https://bugs.eclipse.org/bugs/show_bug.cgi?id=274889

> b) "Default" start level caused startup errors (non-zero value expected).
There is https://bugs.eclipse.org/bugs/show_bug.cgi?id=274901
This is fixed for RC1.

> 2) Is there a 'correct' way to set 'osgi.configuration.cascaded=false'
> and 'osgi.instance.area.default=<folder>' in Product or other source
> level files? I want to avoid having to edit the config.ini post-build.

PDE/Build (and the publisher) support properties in the .product file,
there is no UI for setting them (and I'm not even sure if the UI will
preserve them if you edit the file after adding them manually).

The syntax is <property> elements inside <configurations>
<configurations>
<plugin id="org.eclipse.core.runtime" autoStart="true"
startLevel="4" />
......
<property name="org.eclipse.update.reconcile" value="false" />

<property name="osgi.configuration.cascaded" value="false" />
<property name="osgi.instance.area.default"
value="@user.home/workspace"/>
</configurations>

-Andrew
Re: 3.5M7 - Problem setting transform start levels [message #597003 is a reply to message #59834] Thu, 07 May 2009 12:38 Go to previous message
michael.sacarny is currently offline michael.sacarnyFriend
Messages: 103
Registered: July 2009
Location: USA
Senior Member
Andrew,
I just tried adding Properties to the <configurations> sections and sadly
they do not survive a change to the Configurations, Plugins list.

However, this seems to work for me when in the Launching, VM Arguments
list:
-Dosgi.instance.area.default=@user.home/myproduct${#32}myrel ease
-Dosgi.configuration.cascaded=false

The ${#32} was the only way I could find that preserved the space in the
default path in launcher.ini\config.ini without resulting in path-breaking
carriage returns, extra double quotes, or duplicated entries.

Regards,
MSacarny
Previous Topic:override copy action of editorpart (CopyCurrentLine)
Next Topic:IOException reading workspace metadata
Goto Forum:
  


Current Time: Sat Nov 02 21:12:40 GMT 2024

Powered by FUDForum. Page generated in 0.09098 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top