[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16755584#comment-16755584 ] Olivier Lamy (*$^¨%`£) commented on MINVOKER-243: - This is broken build when using option such -rf as the code change collect all dependencies from projectReferences even those who currently build (because of using -rf option) > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Assignee: Robert Scholte >Priority: Blocker > Fix For: 3.2.0 > > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16740420#comment-16740420 ] Hudson commented on MINVOKER-243: - Build succeeded in Jenkins: Maven TLP » maven-invoker-plugin » master #51 See https://builds.apache.org/job/maven-box/job/maven-invoker-plugin/job/master/51/ > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Assignee: Robert Scholte >Priority: Blocker > Fix For: 3.1.1 > > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16682680#comment-16682680 ] Bryan Turner commented on MINVOKER-243: --- (Note: I'm not sure why _both_ 3.0.1 and 3.1.0 appear to copy the POMs twice; seems like that might be a different issue. Not filtering duplicates, perhaps?) > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16682679#comment-16682679 ] Bryan Turner commented on MINVOKER-243: --- This just caused some CI failures for me. We've got branch builds for our Maven plugins, and artifacts from different branches can be incompatible in various ways depending on the in-flight changes. Since the artifacts from different branches aren't compatible, transitive _in-reactor_ dependencies not being copied can result in mismatches between any current-build artifacts that _do_ get copied and other _in-reactor_ artifacts from previous builds that aren't overwritten. Under 3.0.1, that's not an issue as all _in-reactor_ artifacts are copied, whether they're explicit dependencies or transitive. {{install}} output from 3.0.1: {noformat} [INFO] --- maven-invoker-plugin:3.0.1:install (integration-test) @ bitbucket-maven-plugin --- [INFO] Installing /Users/bturner/Development/atlassian/amps/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/atlassian-amps-parent/8.0.0-SNAPSHOT/atlassian-amps-parent-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-api/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-api/8.0.0-SNAPSHOT/plugin-module-codegen-api-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-api/target/plugin-module-codegen-api-8.0.0-SNAPSHOT.jar to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-api/8.0.0-SNAPSHOT/plugin-module-codegen-api-8.0.0-SNAPSHOT.jar [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-api/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-api/8.0.0-SNAPSHOT/plugin-module-codegen-api-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/test-codegen-jar-classes/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/test-codegen-jar-classes/8.0.0-SNAPSHOT/test-codegen-jar-classes-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/test-codegen-jar-classes/target/test-codegen-jar-classes-8.0.0-SNAPSHOT.jar to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/test-codegen-jar-classes/8.0.0-SNAPSHOT/test-codegen-jar-classes-8.0.0-SNAPSHOT.jar [INFO] Installing /Users/bturner/Development/atlassian/amps/test-codegen-jar-classes/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/test-codegen-jar-classes/8.0.0-SNAPSHOT/test-codegen-jar-classes-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-engine/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-engine/8.0.0-SNAPSHOT/plugin-module-codegen-engine-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-engine/target/plugin-module-codegen-engine-8.0.0-SNAPSHOT.jar to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-engine/8.0.0-SNAPSHOT/plugin-module-codegen-engine-8.0.0-SNAPSHOT.jar [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-engine/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-engine/8.0.0-SNAPSHOT/plugin-module-codegen-engine-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-maven-client/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-maven-client/8.0.0-SNAPSHOT/plugin-module-codegen-maven-client-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-maven-client/target/plugin-module-codegen-maven-client-8.0.0-SNAPSHOT.jar to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-maven-client/8.0.0-SNAPSHOT/plugin-module-codegen-maven-client-8.0.0-SNAPSHOT.jar [INFO] Installing /Users/bturner/Development/atlassian/amps/plugin-module-codegen-maven-client/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/plugin-module-codegen-maven-client/8.0.0-SNAPSHOT/plugin-module-codegen-maven-client-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/standalone/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-repo/com/atlassian/amps/standalone/8.0.0-SNAPSHOT/standalone-8.0.0-SNAPSHOT.pom [INFO] Installing /Users/bturner/Development/atlassian/amps/amps-product-archetypes/pom.xml to /Users/bturner/Development/atlassian/amps/invoker-rep
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16643922#comment-16643922 ] Christopher Tubbs commented on MINVOKER-243: [~rfscholte], yes. In this case, the transitive dependency is a sibling module in a multi-module project. Example: module A: depends on commons-configuration module B: depends on A and commons-io module C: maven plugin configured with invoker for ITs, depends on B {{invoker:install}} in module C should install the jar from module B, and also the jar from module A (because it is a transitive dependency of B), but not commons-io or commons-configuration. Version 3.0.1 works fine, but 3.1.0 fails to install module A, instead only installing module B. > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16625036#comment-16625036 ] Robert Scholte commented on MINVOKER-243: - Maybe good to explain which transitive dependencies. {{invoker:install}} should only install artifacts that are part from the multimodule project, not any third party artifact. > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624877#comment-16624877 ] Christopher Tubbs commented on MINVOKER-243: If I had more time, I could try to create a smaller project for reproducing the issue, but I'm currently prepping to head to Montreal for ApacheCon. For now, hopefully the Accumulo example will suffice. > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624876#comment-16624876 ] Christopher Tubbs commented on MINVOKER-243: [~khmarbaise], sure thing: the current master branch of Accumulo (2.0.0-SNAPSHOT) fails in the maven-plugin module. I fixed this in commit [https://github.com/apache/accumulo/commit/16795c526f6d39d1cffd5be39168850bd1d6fbbd] by reverting to 3.0.1 of the plugin, but if you edit the pom to use 3.1.0 again (which is the version set in the Apache POM version 21), it fails to copy the transitive dependencies during the install goal. You can see the difference by just looking at the number of jars copied during the "install" goal For example, compare the console output of this broken build (3.1.0): [https://builds.apache.org/view/A/view/Accumulo/job/Accumulo-Master/2473/org.apache.accumulo$accumulo-maven-plugin/console] with this working one (3.0.1): [https://builds.apache.org/view/A/view/Accumulo/job/Accumulo-Master/2475/org.apache.accumulo$accumulo-maven-plugin/console] If you want to try to reproduce locally, keep in mind Accumulo probably won't build on Windows (only Mac and Linux), and also has a native JNI library, so you need {{g++}} and {{make}} installed. You can also make the build faster by doing {{mvn clean verify -Dtest=blah -Dit.test=blah -Dspotbugs.skip -Dcheckstyle.skip -Dwarbucks.skip -Dmodernizer.skip -P\!autoformat}}. Don't do {{-DskipTests}} or {{-DskipITs}} because that will activate a profile which skips the invoker plugin execution entirely. Also, keep in mind that now that we've had a successful build, the build may succeed in spite of this bug, because it will pull the previous build's jar from the SNAPSHOT repository instead of from the sibling module's current build. But, you'll still be able to see the failure if you clobber the ${distMgmtSnapshotsUrl} property from the parent POM so it doesn't grab the previous snapshot build. And, in either case, you can still see the difference in the log output regarding which dependencies are being installed. > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MINVOKER-243) invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0)
[ https://issues.apache.org/jira/browse/MINVOKER-243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624533#comment-16624533 ] Karl Heinz Marbaise commented on MINVOKER-243: -- Can you exactly mentioned the version of accumulo you have used? Or even better can you create an example project which shows the wrong behaviour ? > invoker:install doesn't copy transitive dependencies anymore (as of 3.1.0) > -- > > Key: MINVOKER-243 > URL: https://issues.apache.org/jira/browse/MINVOKER-243 > Project: Maven Invoker Plugin > Issue Type: Bug >Affects Versions: 3.1.0 >Reporter: Christopher Tubbs >Priority: Blocker > > Something seems to have broken between 3.0.1 and 3.1.0, as the install goal > no longer copies transitive dependencies to the localRepositoryPath as it did > in version 3.0.1. > This is very problematic, because if the artifacts are not in the > localRepositoryPath, the invoked project will try to download them from a > remote repository, which isn't possible for SNAPSHOT versions (such as those > in a sibling module in a multi-module project). This can make it difficult to > even build a multi-module project, unless the invoked task is skipped and the > sibling module can be published to a remote snapshot repository temporarily, > and then the build re-executed normally. (Saw this happen in Apache Accumulo > after upgrading to apache-21.pom) -- This message was sent by Atlassian JIRA (v7.6.3#76005)