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 2009/09/03 03:00:21 UTC

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

Author: mcculls
Date: Thu Sep  3 01:00:21 2009
New Revision: 810750

URL: http://svn.apache.org/viewvc?rev=810750&view=rev
Log:
FELIX-1539: include additional source directories in local package calculation

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=810750&r1=810749&r2=810750&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 Thu Sep  3 01:00:21 2009
@@ -382,7 +382,7 @@
         if ( builder.getProperty( Analyzer.PRIVATE_PACKAGE ) == null
             || builder.getProperty( Analyzer.EXPORT_PACKAGE ) == null )
         {
-            addLocalPackages( currentProject.getBuild().getSourceDirectory(), builder );
+            addLocalPackages( currentProject.getCompileSourceRoots(), builder );
         }
 
         // update BND instructions to embed selected Maven dependencies
@@ -917,25 +917,29 @@
     }
 
 
-    private static void addLocalPackages( String sourceDirectory, Analyzer analyzer )
+    private static void addLocalPackages( List sourceDirectories, Analyzer analyzer )
     {
         Collection packages = new LinkedHashSet();
 
-        if ( sourceDirectory != null && new File( sourceDirectory ).isDirectory() )
+        for ( Iterator d = sourceDirectories.iterator(); d.hasNext(); )
         {
-            // scan local Java sources for potential packages
-            DirectoryScanner scanner = new DirectoryScanner();
-            scanner.setBasedir( sourceDirectory );
-            scanner.setIncludes( new String[]
-                { "**/*.java" } );
+            String sourceDirectory = (String) d.next();
+            if ( sourceDirectory != null && new File( sourceDirectory ).isDirectory() )
+            {
+                // scan local Java sources for potential packages
+                DirectoryScanner scanner = new DirectoryScanner();
+                scanner.setBasedir( sourceDirectory );
+                scanner.setIncludes( new String[]
+                    { "**/*.java" } );
 
-            scanner.addDefaultExcludes();
-            scanner.scan();
+                scanner.addDefaultExcludes();
+                scanner.scan();
 
-            String[] paths = scanner.getIncludedFiles();
-            for ( int i = 0; i < paths.length; i++ )
-            {
-                packages.add( getPackageName( paths[i] ) );
+                String[] paths = scanner.getIncludedFiles();
+                for ( int i = 0; i < paths.length; i++ )
+                {
+                    packages.add( getPackageName( paths[i] ) );
+                }
             }
         }