You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by mc...@apache.org on 2011/06/24 23:50:08 UTC

svn commit: r1139451 - /felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java

Author: mcculls
Date: Fri Jun 24 21:50:07 2011
New Revision: 1139451

URL: http://svn.apache.org/viewvc?rev=1139451&view=rev
Log:
FELIX-2435: using bundle goals on a WAR file will switch the project to generate jar artifacts

Modified:
    felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java

Modified: felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java
URL: http://svn.apache.org/viewvc/felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java?rev=1139451&r1=1139450&r2=1139451&view=diff
==============================================================================
--- felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java (original)
+++ felix/trunk/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java Fri Jun 24 21:50:07 2011
@@ -325,8 +325,11 @@ public class BundlePlugin extends Abstra
 
             Artifact mainArtifact = currentProject.getArtifact();
 
-            // workaround for MNG-1682: force maven to install artifact using the "jar" handler
-            mainArtifact.setArtifactHandler( m_artifactHandlerManager.getArtifactHandler( "jar" ) );
+            if ( "bundle".equals( mainArtifact.getType() ) )
+            {
+                // workaround for MNG-1682: force maven to install artifact using the "jar" handler
+                mainArtifact.setArtifactHandler( m_artifactHandlerManager.getArtifactHandler( "jar" ) );
+            }
 
             if ( null == classifier || classifier.trim().length() == 0 )
             {
@@ -908,12 +911,25 @@ public class BundlePlugin extends Abstra
      */
     protected String getBundleName( MavenProject currentProject )
     {
+        String extension;
+        try
+        {
+            extension = currentProject.getArtifact().getArtifactHandler().getExtension();
+        }
+        catch ( Throwable e )
+        {
+            extension = currentProject.getArtifact().getType();
+        }
+        if ( StringUtils.isEmpty( extension ) || "bundle".equals( extension ) )
+        {
+            extension = "jar"; // just in case maven gets confused
+        }
         String finalName = currentProject.getBuild().getFinalName();
         if ( null != classifier && classifier.trim().length() > 0 )
         {
-            return finalName + '-' + classifier + ".jar";
+            return finalName + '-' + classifier + '.' + extension;
         }
-        return finalName + ".jar";
+        return finalName + '.' + extension;
     }