Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] Error: Tycho unable to locate the equinox launcher feature

I do have it listed in the target platform - just not in any feature referenced by the *product I am building...

I have also double checked the version - which is what is packaged with E4.3.2 SDK and is available.


*target
----------

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?><target name="WatsonDialog_Platform" sequenceNumber="12">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="slicer" includeSource="true" type="InstallableUnit">
<unit id="com.xxx.tools.workbench.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.product.root.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.toolkit.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.xmgr.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.toolkit.product.root.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.tools.cmt.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.ctp.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.cmt.product.root.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.ctp.product" version="0.0.0"/>
<unit id="com.xxx.tools.cmt.product" version="0.0.0"/>
<unit id="com.xxx.toolkit.product" version="0.0.0"/>
<unit id="com.xxx.tools.workbench.product" version="0.0.0"/>
<unit id="org.eclipse.equinox.executable.feature.group" version="3.6.0.v20140117-1004"/>
<unit id="com.xxx.tools.workbench.product.root.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.server.solo.jetty.feature.feature.group" version="0.0.0"/>
<unit id="com.xxx.xmgr.product" version="0.0.0"/>
<unit id="com.xxx.xmgr.product.root.feature.feature.group" version="0.0.0"/>
</location>
</locations>
</target>

*product (feature-based section)
------------------------------------------

<features>
  <feature id="com.xxx.ctp.feature"/>
  <feature id="com.xxx.server.solo.jetty.feature"/>
  <feature id="com.xxx.tools.workbench.feature"/>
  <feature id="com.xxx.xmgr.feature"/>
  <feature id="com.xxx.wcds.feature"/>
</features>

** If there is a name mismatch between the *target and *product listed here, it is a byproduct of my scrubbing the unit/feature names - and NOT present in source.

On Thu, Dec 18, 2014 at 3:26 AM, Sievers, Jan <jan.sievers@xxxxxxx> wrote:
the IUs listed in the .target are the whitelist of what is visible to the build.
I guess you need to add the org.eclipse.equinox.executable feature there.

The reason why this feature is required is a little long-winded - basically the p2 product publisher which Tycho uses expects the launcher feature directory as an argument [1].
The p2 product publisher should probably rather resolve the required launcher IUs from the context repositories than expect a file location of where the feature resides.

Long story short, if you want native launchers for your product, you have to add the org.eclipse.equinox.executable feature to the target platform for now.

Regards,
Jan

[1] http://git.eclipse.org/c/equinox/rt.equinox.p2.git/tree/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ProductAction.java#n39




From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] On Behalf Of Andy Stoneberg
Sent: Mittwoch, 17. Dezember 2014 20:41
To: Tycho user list
Subject: Re: [tycho-user] Error: Tycho unable to locate the equinox launcher feature

Using a Target file to reference a single P2 repo.

Tycho version 0.21.0.

I do have a log (just been running the build from within Eclipse).  Anything in particular you are looking for?  There are no errors.  I will take me a little while to scrub it if you want me to simply attach the entire thing - or I can give you snippets if you think a particular goal is relevant.  In scanning through though, not seeing anything in the way of stack traces or obvious errors.

Andy

On Wed, Dec 17, 2014 at 2:27 PM, Jeff MAURY <jeffmaury@xxxxxxxxxxxxx> wrote:
Are you using a target file ? Or only a P2 repo ? Any log ? Tycho version ?

Jeff

On Wed, Dec 17, 2014 at 6:21 PM, Andy Stoneberg <stonebaj@xxxxxxxxx> wrote:
Sorry, want to follow up a little bit more as I have some additional information on the issue.

That stack trace only occurs if I check the 'The product includes native launcher artifacts' checkbox in the *Product Editor in Eclipse.  

However, if I leave that checkbox unchecked, the resulting product archives do NOT contain an executable to launch the resultant application.  Additionally, while I am specifying a launcher name of 'xxx' in the 'Launching' section of the *Product Editor, I see it is creating a 'eclipse.ini' file.  It is my understanding that this ini file should match the launcher name.

I saw this type of behavior before in PDE when it could not locate the org.eclipse.equinox.executable feature - so it might just be a different manifestation of the same problem.

Thanks!

Andy

On Wed, Dec 17, 2014 at 10:47 AM, Andy Stoneberg <stonebaj@xxxxxxxxx> wrote:
Greetings again.  I am moving from a PDE/Ant based build into Tycho - so probably more questions will be forthcoming :)  

Most of the conversion has been amazingly easy and understandable ( nice change from the mess that is PDE ).  However, I am now encountering issues when trying to execute the tycho-p2-publisher-plugin:
[ERROR] Failed to execute goal org.eclipse.tycho:tycho-p2-publisher-plugin:0.21.0:publish-products (default-publish-products) on project com.xxx.product: Unable to locate the equinox launcher feature (aka delta-pack) -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.eclipse.tycho:tycho-p2-publisher-plugin:0.21.0:publish-products (default-publish-products) on project com.xxx.product: Unable to locate the equinox launcher feature (aka delta-pack)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to locate the equinox launcher feature (aka delta-pack)
at org.eclipse.tycho.plugins.p2.publisher.PublishProductMojo.getEquinoxExecutableFeature(PublishProductMojo.java:266)
at org.eclipse.tycho.plugins.p2.publisher.PublishProductMojo.publishContent(PublishProductMojo.java:103)
at org.eclipse.tycho.plugins.p2.publisher.AbstractPublishMojo.execute(AbstractPublishMojo.java:37)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more

Now, I am not necessarily surprised by this error but need/want to understand how Tycho expects to resolve this dependency.  The product I am building is based on a subset of Eclipse features/plugins - so when our clients point to our P2 repository, they get everything they need/can use from a single P2 repo (aka - they aren't pointing to "my" P2 repo + standard Eclipse repo).  I am packaging the org.eclipse.equinox.executable feature in my P2 repository with our relevant/supported O/S fragments. I can see the launcher fragments & root IUs are downloaded in my Maven repository (under the p2  /osgi/bundle & /binary folders respectively).  However, the org.eclipse.equinox.executable feature itself is NOT present in org/eclipse/update/feature directory.  I'm guessing it is because the feature is not listed *product file describing the build.  However, as this is really only a build-time dependency, I would prefer to not add it here.

Any help/insight would be appreciated.  Also, if I am rambling and not making sense - let me know and I will happily address any further questions about my setup.

Andy

_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tycho-user



--
Jeff MAURY


"Legacy code" often differs from its suggested alternative by actually working and scaling.
 - Bjarne Stroustrup

http://www.jeffmaury.com
http://riadiscuss.jeffmaury.com
http://www.twitter.com/jeffmaury

_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tycho-user
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tycho-user

Back to the top