Maven-osgi-plugin: Force POM's specified JAR dependencies in 'Bundle-Classpath'
attribute, when adding a manifest file
----------------------------------------------------------------------------------------------------------------------
Key: FELIXM2-4
URL: http://issues.apache.org/jira/browse/FELIXM2-4
Project: Felix M2 Plugin
Type: New Feature
Versions: 0.1.3
Environment: RCP based product .
Reporter: mike peyvandi
Assigned to: Timothy Bennett
Priority: Minor
Maven-osgi-plugin
In RCP based product, the Bundle-ClassPath defined in eclipse plugins needs to
be replaced with POM's specified Jar Dependencies. That's the only attribute
in the Eclipse Manifest that needs to be overwritten when building the project
by Maven.
Removing the 'Bundle-Classpath' attribute from the Eclipse manifest file, will
do the trick, as the addBundleClassPath() will add the POM's classpath entries.
Suggestion:
Define a new Configuration Parameter: usePomBundleClassPath : (boolean)
If true, remove the 'Bundle-ClassPath' attribute from the main section of added
manifestFile
Set the new ManifestFile in achiveConfig
Something like this:
private void addManifestFile() throws MojoExecutionException {
if (manifestFile != null) {
File file = new File(project.getBasedir().getAbsolutePath(),
manifestFile);
getLog().info("Manifest file: " + file.getAbsolutePath() + " will
be used");
file = enablePomBundleClassPath(file);
archiveConfig.setManifestFile(file);
} else {
getLog().info("No manifest file specified. Default will be used.");
}
}
and pom.xml
<configuration>
<manifestFile>manifest.mf</manifestFile>
<usePomBundleClassPath>true</usePomBundleClassPath>
.....
If that makes sense, I can submit the changes.
Regards, Mike
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira