You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by si...@apache.org on 2008/08/28 22:52:45 UTC
svn commit: r689977 - in
/maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project:
DefaultMavenProjectBuilder.java builder/PomClassicTransformer.java
Author: sisbell
Date: Thu Aug 28 13:52:45 2008
New Revision: 689977
URL: http://svn.apache.org/viewvc?rev=689977&view=rev
Log:
A pom cannot inherit resources/testResources/pluginRepositories from a parent pom but it can from a super pom. Added this superPom inheritance.
Modified:
maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
Modified: maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=689977&r1=689976&r2=689977&view=diff
==============================================================================
--- maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Thu Aug 28 13:52:45 2008
@@ -174,8 +174,17 @@
config,
projectDescriptor,
project.getParentFile(),
- true,
- true);
+ true
+ );
+
+ Build build = project.getBuild();
+ // NOTE: setting this script-source root before path translation, because
+ // the plugin tools compose basedir and scriptSourceRoot into a single file.
+ project.addScriptSourceRoot(build.getScriptSourceDirectory());
+ project.addCompileSourceRoot(build.getSourceDirectory());
+ project.addTestCompileSourceRoot(build.getTestSourceDirectory());
+ // Only track the file of a POM in the source tree
+ project.setFile(projectDescriptor);
}
return project;
}
@@ -214,7 +223,7 @@
project = readModelFromLocalPath("unknown", artifact.getFile(), new PomArtifactResolver(config.getLocalRepository(),
artifactRepositories, artifactResolver), config);
project = buildInternal(project.getModel(), config, artifact.getFile(), project.getParentFile(),
- false, false);
+ false);
}
return project;
@@ -326,27 +335,22 @@
ProjectBuilderConfiguration config)
throws ProjectBuildingException {
MavenProject project = build(projectDescriptor, config);
- Artifact projectArtifact = project.getArtifact();
-
- String projectId = safeVersionlessKey(project.getGroupId(), project.getArtifactId());
-
- Map managedVersions = project.getManagedVersionMap();
try {
project.setDependencyArtifacts(project.createArtifacts(artifactFactory, null, null));
}
catch (InvalidDependencyVersionException e) {
- throw new ProjectBuildingException(projectId,
+ throw new ProjectBuildingException(safeVersionlessKey(project.getGroupId(), project.getArtifactId()),
"Unable to build project due to an invalid dependency version: " +
e.getMessage(), projectDescriptor, e);
}
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
- .setArtifact(projectArtifact)
+ .setArtifact(project.getArtifact())
.setArtifactDependencies(project.getDependencyArtifacts())
.setLocalRepository(config.getLocalRepository())
.setRemoteRepostories(project.getRemoteArtifactRepositories())
- .setManagedVersionMap(managedVersions)
+ .setManagedVersionMap(project.getManagedVersionMap())
.setMetadataSource(artifactMetadataSource);
ArtifactResolutionResult result = artifactResolver.resolve(request);
@@ -378,8 +382,8 @@
ProjectBuilderConfiguration config,
File projectDescriptor,
File parentDescriptor,
- boolean isReactorProject,
- boolean fromSourceTree)
+ boolean isReactorProject
+ )
throws ProjectBuildingException {
MavenProject superProject;
@@ -436,21 +440,6 @@
throw new InvalidProjectModelException(projectId, e.getMessage(), projectDescriptor, e);
}
- if (fromSourceTree) {
- Build build = project.getBuild();
-
- // NOTE: setting this script-source root before path translation, because
- // the plugin tools compose basedir and scriptSourceRoot into a single file.
- project.addScriptSourceRoot(build.getScriptSourceDirectory());
-
- project.addCompileSourceRoot(build.getSourceDirectory());
-
- project.addTestCompileSourceRoot(build.getTestSourceDirectory());
-
- // Only track the file of a POM in the source tree
- project.setFile(projectDescriptor);
- }
-
projectWorkspace.storeProjectByCoordinate(project);
projectWorkspace.storeProjectByFile(project);
Modified: maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
URL: http://svn.apache.org/viewvc/maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java?rev=689977&r1=689976&r2=689977&view=diff
==============================================================================
--- maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java (original)
+++ maven/components/branches/sisbell-maven-2.1-profile/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java Thu Aug 28 13:52:45 2008
@@ -367,18 +367,29 @@
tmp.add( index, new ModelProperty( ProjectUri.Scm.developerConnection, scmDeveloperUrl.toString() ) );
}
-
- //Remove Plugin Repository Inheritance Rule
//Project Name Inheritance Rule
//Packaging Inheritance Rule
- //Build Resources Inheritence Rule
- //Build Test Resources Inheritance Rule
//Profiles not inherited rule
for ( ModelProperty mp : tmp )
{
String uri = mp.getUri();
if ( domainModels.indexOf( domainModel ) > 0 && ( uri.equals( ProjectUri.name ) ||
- uri.equals( ProjectUri.packaging ) || uri.startsWith( ProjectUri.Profiles.xUri ) ||
+ uri.equals( ProjectUri.packaging ) || uri.startsWith( ProjectUri.Profiles.xUri )
+ ) )
+ {
+ clearedProperties.add( mp );
+ }
+ }
+
+ //Remove Plugin Repository Inheritance Rule
+ //Build Resources Inheritence Rule
+ //Build Test Resources Inheritance Rule
+ //Only inherit the above from super pom (domainModels.size() -1)
+ for ( ModelProperty mp : tmp )
+ {
+ String uri = mp.getUri();
+ if ( domainModels.indexOf( domainModel ) > 0
+ && domainModels.indexOf(domainModel) != (domainModels.size() -1 ) && (
uri.startsWith( ProjectUri.Build.Resources.xUri ) ||
uri.startsWith( ProjectUri.Build.TestResources.xUri ) ||
uri.startsWith( ProjectUri.PluginRepositories.xUri ) ) )
@@ -386,6 +397,7 @@
clearedProperties.add( mp );
}
}
+
ModelProperty artifactId = getPropertyFor( ProjectUri.artifactId, tmp );
if ( artifactId != null )
{