Author: krosenvold Date: Tue Nov 4 10:43:54 2014 New Revision: 1636535 URL: http://svn.apache.org/r1636535 Log: [MASSEMBLY-727] Implied dependencysets have incorrect outputfilemapping
Updated IT for massambly-395 which originally demonstrated this problem Added: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/App.java - copied, changed from r1636510, maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/App2.java - copied, changed from r1636510, maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh Removed: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/my-app-module1/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/my-app-module1/src/main/java/com/mycompany/app/App.java maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/my-app-module2/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/my-app-module2/src/main/java/com/mycompany/app/App2.java Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/pom.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/src/main/assembly/zip.xml maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original) +++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Tue Nov 4 10:43:54 2014 @@ -456,6 +456,7 @@ under the License. <pomExclude>dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml</pomExclude> <pomExclude>dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml</pomExclude> + <pomExclude>**/my-app*/pom.xml</pomExclude> <pomExclude>**/child*/pom.xml</pomExclude> <pomExclude>**/module*/pom.xml</pomExclude> <pomExclude>**/descriptor/pom.xml</pomExclude> Added: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/pom.xml URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/pom.xml?rev=1636535&view=auto ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/pom.xml (added) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/pom.xml Tue Nov 4 10:43:54 2014 @@ -0,0 +1,38 @@ +<?xml version="1.0"?><project> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + + <modelVersion>4.0.0</modelVersion> + <groupId>com.mycompany.app</groupId> + <artifactId>my-app-module1</artifactId> + <name>my-app-module1</name> + <version>1.0-SNAPSHOT</version> + <dependencies> + <dependency> + <artifactId>my-app-module2</artifactId> + <groupId>com.mycompany.app</groupId> + <version>1.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + </dependency> + </dependencies> +</project> Copied: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/App.java (from r1636510, maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh) URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/App.java?p2=maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/App.java&p1=maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh&r1=1636510&r2=1636535&rev=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child1/src/main/java/com/mycompany/app/App.java Tue Nov 4 10:43:54 2014 @@ -1,3 +1,5 @@ +package com.mycompany.app; + /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -6,9 +8,9 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -17,20 +19,14 @@ * under the License. */ -import java.io.*; -import java.util.*; -import java.util.jar.*; -import java.util.zip.*; - - -File f = new File( basedir, "target/my-app-1.0-SNAPSHOT-bin.zip" ); -ZipFile zf = new ZipFile( f ); - -ZipEntry child1InclEntry = zf.getEntry( "my-app-1.0-SNAPSHOT/modules/junit.jar" ); - -if ( child1InclEntry == null ) +/** + * Hello world! + * + */ +public class App { - System.out.println( "Expected junit.jar!" ); - return false; + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } } -return true; Added: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/pom.xml URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/pom.xml?rev=1636535&view=auto ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/pom.xml (added) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/pom.xml Tue Nov 4 10:43:54 2014 @@ -0,0 +1,35 @@ +<?xml version="1.0"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + +<project> + <modelVersion>4.0.0</modelVersion> + <groupId>com.mycompany.app</groupId> + <artifactId>my-app-module2</artifactId> + <name>my-app-module2</name> + <version>1.0-SNAPSHOT</version> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> +</project> \ No newline at end of file Copied: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/App2.java (from r1636510, maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh) URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/App2.java?p2=maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/App2.java&p1=maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh&r1=1636510&r2=1636535&rev=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/child2/src/main/java/com/mycompany/app/App2.java Tue Nov 4 10:43:54 2014 @@ -1,3 +1,5 @@ +package com.mycompany.app; + /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -6,9 +8,9 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -17,20 +19,14 @@ * under the License. */ -import java.io.*; -import java.util.*; -import java.util.jar.*; -import java.util.zip.*; - - -File f = new File( basedir, "target/my-app-1.0-SNAPSHOT-bin.zip" ); -ZipFile zf = new ZipFile( f ); - -ZipEntry child1InclEntry = zf.getEntry( "my-app-1.0-SNAPSHOT/modules/junit.jar" ); - -if ( child1InclEntry == null ) +/** + * Hello world! + * + */ +public class App2 { - System.out.println( "Expected junit.jar!" ); - return false; + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } } -return true; Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/pom.xml URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/pom.xml?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/pom.xml (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/pom.xml Tue Nov 4 10:43:54 2014 @@ -1,4 +1,23 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.mycompany.app</groupId> @@ -13,10 +32,16 @@ <version>3.8.1</version> <scope>test</scope> </dependency> + <dependency> + <groupId>com.mycompany.app</groupId> + <artifactId>my-app-module2</artifactId> + <version>1.0-SNAPSHOT</version> + <scope>test</scope> + </dependency> </dependencies> <modules> - <module>my-app-module1</module> - <module>my-app-module2</module> + <module>child1</module> + <module>child2</module> </modules> <build> <plugins> Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/src/main/assembly/zip.xml URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/src/main/assembly/zip.xml?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/src/main/assembly/zip.xml (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/src/main/assembly/zip.xml Tue Nov 4 10:43:54 2014 @@ -1,3 +1,22 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> + <assembly> <id>bin</id> <formats> @@ -10,7 +29,7 @@ </includes> <binaries> <outputDirectory>modules</outputDirectory> - <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping> + <!-- outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping --> <unpack>false</unpack> <includeDependencies>true</includeDependencies> Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/massembly-395/verify.bsh Tue Nov 4 10:43:54 2014 @@ -26,7 +26,7 @@ import java.util.zip.*; File f = new File( basedir, "target/my-app-1.0-SNAPSHOT-bin.zip" ); ZipFile zf = new ZipFile( f ); -ZipEntry child1InclEntry = zf.getEntry( "my-app-1.0-SNAPSHOT/modules/junit.jar" ); +ZipEntry child1InclEntry = zf.getEntry( "my-app-1.0-SNAPSHOT/modules/junit-3.8.1.jar" ); if ( child1InclEntry == null ) { Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh Tue Nov 4 10:43:54 2014 @@ -21,8 +21,8 @@ import java.io.*; boolean result = true; -result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/jdom.jar" ).exists(); -result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/velocity.jar" ).exists(); +result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/jdom-1.0.jar" ).exists(); +result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/velocity-1.4.jar" ).exists(); result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/module-a.jar" ).exists(); result = result && new File( basedir, "target/using-moduleSet-implied-depSet-1.0-SNAPSHOT-bin/modules/module-b.jar" ).exists(); Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Tue Nov 4 10:43:54 2014 @@ -311,7 +311,7 @@ public class ModuleSetAssemblyPhase final DependencySet impliedDependencySet = new DependencySet(); impliedDependencySet.setOutputDirectory( binaries.getOutputDirectory() ); - impliedDependencySet.setOutputFileNameMapping( binaries.getOutputFileNameMapping() ); + //impliedDependencySet.setOutputFileNameMapping( binaries.getOutputFileNameMapping() ); impliedDependencySet.setFileMode( binaries.getFileMode() ); impliedDependencySet.setDirectoryMode( binaries.getDirectoryMode() ); impliedDependencySet.setExcludes( binaries.getExcludes() ); Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java?rev=1636535&r1=1636534&r2=1636535&view=diff ============================================================================== --- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java (original) +++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java Tue Nov 4 10:43:54 2014 @@ -185,15 +185,6 @@ public class AddArtifactTask } else { - /* - Artifact primary = moduleArtifact != null ? moduleArtifact : artifact; - Artifact secondary = moduleArtifact != null ? artifact : moduleArtifact; - final String tempMapping = - AssemblyFormatUtils.evaluateFileNameMapping( outputFileNameMapping, primary, - configSource.getProject(), moduleProject, secondary, - project, configSource ); - - */ final String tempMapping = AssemblyFormatUtils.evaluateFileNameMapping( outputFileNameMapping, artifact, configSource.getProject(), moduleProject, moduleArtifact,