Hi,
I maintain an Eclipse RCP application which I'd like to use with PAX.
However, when I run "pax-import-bundle -g org.eclipse.core -a runtime
-v 3.4.0 -- -DwidenScope -DimportTransitive" I get the following
message:
[INFO] Scanning for projects...
[INFO]
------------------------------------------------------------------------
[INFO] Building de.ams.migrator (OSGi project)
[INFO] task-segment: [org.ops4j:maven-pax-plugin:1.4:import-bundle]
(aggregator-style)
[INFO]
------------------------------------------------------------------------
[INFO] [pax:import-bundle]
[INFO] Importing Core Runtime to
de.ams.migrator.build:provision:pom:1.0-SNAPSHOT
[INFO]
------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO]
------------------------------------------------------------------------
[INFO] version was null for org.eclipse.equinox:common
[INFO]
------------------------------------------------------------------------
[INFO] Trace
java.lang.NullPointerException: version was null for
org.eclipse.equinox:common
at
org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362)
at
org.apache.maven.artifact.DefaultArtifact.isSnapshot(DefaultArtifact.java:536)
at
org.ops4j.pax.construct.util.PomUtils.getMetaVersion(PomUtils.java:515)
at
org.ops4j.pax.construct.project.ImportBundleMojo.getCandidateId(ImportBundleMojo.java:493)
at
org.ops4j.pax.construct.project.ImportBundleMojo.processDependencies(ImportBundleMojo.java:434)
at
org.ops4j.pax.construct.project.ImportBundleMojo.importBundles(ImportBundleMojo.java:276)
at
org.ops4j.pax.construct.project.ImportBundleMojo.execute(ImportBundleMojo.java:237)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:227)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 5 seconds
[INFO] Finished at: Tue Jul 28 16:26:11 CEST 2009
[INFO] Final Memory: 10M/254M
[INFO]
------------------------------------------------------------------------
If I go over to the POM in my local maven repository, the POM for
org.eclipse.core.runtime looks like this:
<?xml version="1.0" encoding="UTF-8"?><project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.eclipse.core</groupId>
<artifactId>runtime</artifactId>
<name>Core Runtime</name>
<version>3.4.0</version>
.....
<dependencies>
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>osgi</artifactId>
<version>[3.2.0,4.0.0)</version>
</dependency>
<dependency>
<groupId>org.eclipse.equinox</groupId>
<artifactId>common</artifactId>
<version>[3.2.0,4.0.0)</version>
</dependency>
.....
</dependencies>
</project>
Of course the POM was generated using eclipse:to-maven goal
(http://maven.apache.org/plugins/maven-eclipse-plugin/to-maven-mojo.html) with
the option strip-qualifier enabled, as I got problems with some
dependencies if I left it on.
Generally I used this post
http://jaxclipse.wordpress.com/2007/11/27/eclipse-rcp-and-spring-dm-part-ii/
as a source of inspiration. However, I could not find a lot of
information on using Eclipse RCP / Maven / Spring-Osgi... I am thus
very open for comments if someone has a better way to manage these
kind of project, or more current information on how to use PAX in this
special case.
Greetings,
Nils Kaiser
_______________________________________________
general mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/general