You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/08/13 21:17:19 UTC
svn commit: r803995 - in /maven/components/trunk:
maven-core/src/main/java/org/apache/maven/
maven-model-builder/src/main/java/org/apache/maven/model/building/
maven-model-builder/src/main/java/org/apache/maven/model/validation/
Author: bentmann
Date: Thu Aug 13 19:17:19 2009
New Revision: 803995
URL: http://svn.apache.org/viewvc?rev=803995&view=rev
Log:
[MNG-4297] Disallow use of properties in the project coordinates
o For Maven 3.0, started to produce a warning
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java?rev=803995&r1=803994&r2=803995&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java Thu Aug 13 19:17:19 2009
@@ -322,7 +322,7 @@
logger.warn( "It is highly recommended to fix these problems"
+ " because they threaten the stability of your build." );
logger.warn( "" );
- logger.warn( "For this reason, future Maven versions will no"
+ logger.warn( "For this reason, future Maven versions might no"
+ " longer support building such malformed projects." );
logger.warn( "" );
}
Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java?rev=803995&r1=803994&r2=803995&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java Thu Aug 13 19:17:19 2009
@@ -289,6 +289,7 @@
model.setPomFile( pomFile );
+ problems.setSourceHint( model );
modelValidator.validateRawModel( model, request, problems );
return model;
Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java?rev=803995&r1=803994&r2=803995&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java Thu Aug 13 19:17:19 2009
@@ -71,6 +71,10 @@
if ( request.getValidationLevel() >= ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_2_0 )
{
+ validateStringNoExpression( "groupId", problems, true, model.getGroupId() );
+ validateStringNoExpression( "artifactId", problems, true, model.getArtifactId() );
+ validateStringNoExpression( "version", problems, true, model.getVersion() );
+
validateDependencies( problems, model.getDependencies(), "dependencies.dependency", request );
if ( model.getDependencyManagement() != null )
@@ -385,6 +389,24 @@
// Field validation
// ----------------------------------------------------------------------
+ private boolean validateStringNoExpression( String fieldName, ModelProblemCollector problems, boolean warning,
+ String string )
+ {
+ if ( !hasExpression( string ) )
+ {
+ return true;
+ }
+
+ addViolation( problems, warning, "'" + fieldName + "' contains an expression but should be a constant." );
+
+ return false;
+ }
+
+ private boolean hasExpression( String value )
+ {
+ return value != null && value.indexOf( "${" ) >= 0;
+ }
+
private boolean validateStringNotEmpty( String fieldName, ModelProblemCollector problems, boolean warning, String string )
{
return validateStringNotEmpty( fieldName, problems, warning, string, null );