Author: jdcasey
Date: Mon Mar 19 15:48:14 2007
New Revision: 520150

URL: http://svn.apache.org/viewvc?view=rev&rev=520150
Log:
a couple small bugfixes.

Modified:
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionContext.java
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/BindingUtils.java
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/DefaultLifecycleBindingManager.java
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
    
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
 Mon Mar 19 15:48:14 2007
@@ -48,6 +48,7 @@
         artifacts.add( "maven-build-context" );
         artifacts.add( "maven-core" );
         artifacts.add( "maven-error-diagnoser" );
+        artifacts.add( "maven-lifecycle" );
         artifacts.add( "maven-model" );
         artifacts.add( "maven-monitor" );
         artifacts.add( "maven-plugin-api" );

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionContext.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionContext.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionContext.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionContext.java
 Mon Mar 19 15:48:14 2007
@@ -35,7 +35,7 @@
     private MavenProject currentProject;
     private Stack forkedProjectStack = new Stack();
 
-    private Map reports;
+    private Map reports = new HashMap();
     
     public LifecycleExecutionContext( MavenProject project )
     {

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/BindingUtils.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/BindingUtils.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/BindingUtils.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/BindingUtils.java
 Mon Mar 19 15:48:14 2007
@@ -102,7 +102,22 @@
      */
     static Object mergeConfigurations( ReportPlugin reportPlugin, ReportSet 
reportSet )
     {
-        return mergeRawConfigurations( reportSet.getConfiguration(), 
reportPlugin.getConfiguration() );
+        if ( reportPlugin == null && reportSet == null )
+        {
+            return null;
+        }
+        else if ( reportSet == null )
+        {
+            return reportPlugin.getConfiguration();
+        }
+        else if ( reportPlugin == null )
+        {
+            return reportSet.getConfiguration();
+        }
+        else
+        {
+            return mergeRawConfigurations( reportSet.getConfiguration(), 
reportPlugin.getConfiguration() );
+        }
     }
 
     /**

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/DefaultLifecycleBindingManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/DefaultLifecycleBindingManager.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/DefaultLifecycleBindingManager.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/lifecycle/binding/DefaultLifecycleBindingManager.java
 Mon Mar 19 15:48:14 2007
@@ -245,47 +245,62 @@
                         PluginExecution execution = (PluginExecution) 
execIt.next();
 
                         List goals = execution.getGoals();
-                        for ( Iterator goalIterator = goals.iterator(); 
goalIterator.hasNext(); )
+                        if ( goals != null && !goals.isEmpty() )
                         {
-                            String goal = (String) goalIterator.next();
+                            for ( Iterator goalIterator = goals.iterator(); 
goalIterator.hasNext(); )
+                            {
+                                String goal = (String) goalIterator.next();
+                                
+                                if ( goal == null )
+                                {
+                                    logger.warn( "Execution: " + 
execution.getId() + " in plugin: " + plugin.getKey() + " in the POM has a null 
goal." );
+                                    continue;
+                                }
 
-                            MojoBinding mojoBinding = new MojoBinding();
+                                MojoBinding mojoBinding = new MojoBinding();
 
-                            mojoBinding.setGroupId( plugin.getGroupId() );
-                            mojoBinding.setArtifactId( plugin.getArtifactId() 
);
-                            mojoBinding.setVersion( plugin.getVersion() );
-                            mojoBinding.setGoal( goal );
-                            mojoBinding.setConfiguration( 
BindingUtils.mergeConfigurations( plugin, execution ) );
-                            mojoBinding.setExecutionId( execution.getId() );
-                            mojoBinding.setOrigin( "POM" );
+                                mojoBinding.setGroupId( plugin.getGroupId() );
+                                mojoBinding.setArtifactId( 
plugin.getArtifactId() );
+                                mojoBinding.setVersion( plugin.getVersion() );
+                                mojoBinding.setGoal( goal );
+                                mojoBinding.setConfiguration( 
BindingUtils.mergeConfigurations( plugin, execution ) );
+                                mojoBinding.setExecutionId( execution.getId() 
);
+                                mojoBinding.setOrigin( "POM" );
 
-                            String phase = execution.getPhase();
-                            if ( phase == null )
-                            {
-                                if ( pluginDescriptor == null )
+                                String phase = execution.getPhase();
+                                if ( phase == null )
                                 {
-                                    try
+                                    if ( pluginDescriptor == null )
                                     {
-                                        pluginDescriptor = 
pluginLoader.loadPlugin( plugin, project );
+                                        try
+                                        {
+                                            pluginDescriptor = 
pluginLoader.loadPlugin( plugin, project );
+                                        }
+                                        catch ( PluginLoaderException e )
+                                        {
+                                            throw new 
LifecycleLoaderException( "Failed to load plugin: " + plugin + ". Reason: "
+                                                + e.getMessage(), e );
+                                        }
                                     }
-                                    catch ( PluginLoaderException e )
+                                    
+                                    if ( pluginDescriptor.getMojos() == null )
                                     {
-                                        throw new LifecycleLoaderException( 
"Failed to load plugin: " + plugin + ". Reason: "
-                                            + e.getMessage(), e );
+                                        logger.error( "Somehow, the 
PluginDescriptor for plugin: " + plugin.getKey() + " contains no mojos. This is 
highly irregular. Ignoring..." );
+                                        continue;
                                     }
-                                }
 
-                                MojoDescriptor mojoDescriptor = 
pluginDescriptor.getMojo( goal );
-                                phase = mojoDescriptor.getPhase();
+                                    MojoDescriptor mojoDescriptor = 
pluginDescriptor.getMojo( goal );
+                                    phase = mojoDescriptor.getPhase();
 
-                                if ( phase == null )
-                                {
-                                    throw new LifecycleSpecificationException( 
"No phase specified for goal: " + goal
-                                        + " in plugin: " + plugin.getKey() + " 
from POM: " + projectId );
+                                    if ( phase == null )
+                                    {
+                                        throw new 
LifecycleSpecificationException( "No phase specified for goal: " + goal
+                                            + " in plugin: " + plugin.getKey() 
+ " from POM: " + projectId );
+                                    }
                                 }
-                            }
 
-                            LifecycleUtils.addMojoBinding( phase, mojoBinding, 
bindings );
+                                LifecycleUtils.addMojoBinding( phase, 
mojoBinding, bindings );
+                            }
                         }
                     }
                 }

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
 Mon Mar 19 15:48:14 2007
@@ -173,6 +173,7 @@
         // All version-resolution logic has been moved to 
DefaultPluginVersionManager.
         if ( plugin.getVersion() == null )
         {
+            getLogger().debug( "Resolving version for plugin: " + 
plugin.getKey() );
             String version = pluginVersionManager.resolvePluginVersion( 
plugin.getGroupId(), plugin.getArtifactId(),
                                                                         
project, session );
             plugin.setVersion( version );

Modified: 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java?view=diff&rev=520150&r1=520149&r2=520150
==============================================================================
--- 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java
 (original)
+++ 
maven/components/branches/2.1-lifecycle-refactor/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java
 Mon Mar 19 15:48:14 2007
@@ -90,6 +90,7 @@
 
         // first pass...if the plugin is specified in the pom, try to retrieve 
the version from there.
         String version = getVersionFromPluginConfig( groupId, artifactId, 
project, resolveAsReportPlugin );
+        getLogger().debug( "Version from POM: " + version );
 
         // NOTE: We CANNOT check the current project version here, so delay it 
until later.
         // It will prevent plugins from building themselves, if they are part 
of the lifecycle mapping.
@@ -107,6 +108,7 @@
                 }
             }
         }
+        getLogger().debug( "Version from another POM in the reactor: " + 
version );
 
         // third pass...we're always checking for latest install/deploy, so 
retrieve the version for LATEST metadata and
         // also set that resolved version as the <useVersion/> in settings.xml.
@@ -114,6 +116,7 @@
         {
             // 1. resolve the version to be used
             version = resolveMetaVersion( groupId, artifactId, project, 
localRepository, Artifact.LATEST_VERSION );
+            getLogger().debug( "Version from LATEST metadata: " + version );
         }
 
         // final pass...retrieve the version for RELEASE and also set that 
resolved version as the <useVersion/>
@@ -122,6 +125,7 @@
         {
             // 1. resolve the version to be used
             version = resolveMetaVersion( groupId, artifactId, project, 
localRepository, Artifact.RELEASE_VERSION );
+            getLogger().debug( "Version from RELEASE metadata: " + version );
         }
 
         // if we're still empty here, and the current project matches the 
plugin in question, use the current project's
@@ -130,6 +134,7 @@
             project.getArtifactId().equals( artifactId ) )
         {
             version = project.getVersion();
+            getLogger().debug( "Version from POM itself (this project IS the 
plugin project): " + version );
         }
 
         // if we still haven't found a version, then fail early before we get 
into the update goop.


Reply via email to