Author: bentmann Date: Wed Aug 17 11:02:03 2011 New Revision: 1158623 URL: http://svn.apache.org/viewvc?rev=1158623&view=rev Log: [MNG-5157] NPE stemming from DefaultModelBuilder.containsCoordinates
Modified: maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java Modified: maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java?rev=1158623&r1=1158622&r2=1158623&view=diff ============================================================================== --- maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java (original) +++ maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java Wed Aug 17 11:02:03 2011 @@ -909,6 +909,13 @@ public class DefaultModelBuilder String artifactId = dependency.getArtifactId(); String version = dependency.getVersion(); + if ( version == null || version.length() <= 0 ) + { + problems.add( Severity.ERROR, "'dependencyManagement.dependencies.dependency.version' for " + + dependency.getManagementKey() + " is missing.", dependency.getLocation( "" ), null ); + continue; + } + String imported = groupId + ':' + artifactId + ':' + version; if ( importIds.contains( imported ) ) @@ -1045,8 +1052,9 @@ public class DefaultModelBuilder private boolean containsCoordinates( String message, String groupId, String artifactId, String version ) { - return message != null && message.contains( groupId ) && message.contains( artifactId ) - && message.contains( version ); + return message != null && ( groupId == null || message.contains( groupId ) ) + && ( artifactId == null || message.contains( artifactId ) ) + && ( version == null || message.contains( version ) ); } } Modified: maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java?rev=1158623&r1=1158622&r2=1158623&view=diff ============================================================================== --- maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java (original) +++ maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java Wed Aug 17 11:02:03 2011 @@ -356,6 +356,12 @@ public class DefaultModelValidator { String key = dependency.getManagementKey(); + validateStringNotEmpty( prefix + ".groupId", problems, Severity.ERROR, dependency.getGroupId(), key, + dependency ); + + validateStringNotEmpty( prefix + ".artifactId", problems, Severity.ERROR, dependency.getArtifactId(), key, + dependency ); + if ( "import".equals( dependency.getScope() ) ) { if ( !"pom".equals( dependency.getType() ) )