You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Martin Petrovsky (JIRA)" <ji...@apache.org> on 2012/05/03 21:06:48 UTC
[jira] [Commented] (FELIX-3497) Wrong artifact type attached as a
secondary artifact when project packaging is set to "pom"
[ https://issues.apache.org/jira/browse/FELIX-3497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13267697#comment-13267697 ]
Martin Petrovsky commented on FELIX-3497:
-----------------------------------------
And here is the patch:
Index: src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java
===================================================================
--- src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java (revision 1333571)
+++ src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java (working copy)
@@ -132,6 +132,13 @@
protected String classifier;
/**
+ * Packaging type of the bundle. Retrieved from POM file if specified.
+ *
+ * @parameter expression="${packaging}"
+ */
+ private String packaging;
+
+ /**
* @component
*/
private MavenProjectHelper m_projectHelper;
@@ -375,7 +382,7 @@
}
else
{
- m_projectHelper.attachArtifact( currentProject, jarFile, classifier );
+ m_projectHelper.attachArtifact( currentProject, getPackaging(), classifier, jarFile );
}
if ( unpackBundle )
@@ -1237,7 +1244,19 @@
outputDirectory = _outputDirectory;
}
+ protected void setPackaging( String _packaging )
+ {
+ this.packaging = _packaging;
+ }
+ protected String getPackaging()
+ {
+ if (this.packaging == null || this.packaging.trim().length() == 0) {
+ this.packaging = getProject().getPackaging();
+ }
+ return packaging;
+ }
+
private static void addLocalPackages( File outputDirectory, Analyzer analyzer )
{
Collection packages = new TreeSet();
> Wrong artifact type attached as a secondary artifact when project packaging is set to "pom"
> -------------------------------------------------------------------------------------------
>
> Key: FELIX-3497
> URL: https://issues.apache.org/jira/browse/FELIX-3497
> Project: Felix
> Issue Type: Bug
> Components: Maven Bundle Plugin
> Affects Versions: maven-bundle-plugin-2.3.7
> Environment: any
> Reporter: Martin Petrovsky
> Labels: patch
>
> When trying to create a ${artifactid}-tests.jar in a maven project that does not produce a primary bundle the plugin attaches the ${artifactid}-tests.jar bundle as ${artifactid}-tests.pom. The plugin does not abide by the "<packaging>jar</packaging>" config.
> I have attached both an example POM and a simple fix in the form of a patch.
> Example POM:
> {code}
> <project>
> <groupId>foo</groupId>
> <artifactId>bar</artifactId>
> <version>1.5.1-SNAPSHOT</version>
> <packaging>pom</packaging>
> <build>
> <plugins>
> <!-- Create a Integration test bundle -->
> <plugin>
> <groupId>org.apache.felix</groupId>
> <artifactId>maven-bundle-plugin</artifactId>
> <executions>
> <execution>
> <id>bundle-tests</id>
> <phase>package</phase>
> <goals><goal>bundle</goal></goals>
> </execution>
> </executions>
> <configuration>
> <classifier>tests</classifier>
> <packaging>jar</packaging>
> <supportedProjectTypes><supportedProjectType>pom</supportedProjectType></supportedProjectTypes>
> <outputDirectory>target/test-classes</outputDirectory>
> <instructions>
> <Export-Package>com.foo.*</Export-Package>
> <Sling-Test-Regexp>.*Test</Sling-Test-Regexp>
> <Bundle-Description>Integration Tests - ${project.description}</Bundle-Description>
> <Bundle-Name>Integration Tests for ${project.name}</Bundle-Name>
> <Bundle-SymbolicName>${groupId}.${artifactId}-tests</Bundle-SymbolicName>
> </instructions>
> </configuration>
> </plugin>
> </plugins>
> </build>
> </project>
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira