[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user asfgit closed the pull request at: https://github.com/apache/maven-surefire/pull/161 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user jon-bell commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130497860 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT --- End diff -- Sorry about that - hadn't noticed that it wasn't specified. Added it to both the provider and the test project. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user Tibor17 commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130488490 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT --- End diff -- You should specify parent pom ``` org.apache.maven.surefire it-parent 1.0 ../pom.xml ``` --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user Tibor17 commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130447743 --- Diff: maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java --- @@ -2755,7 +2755,16 @@ public Classpath getProviderClasspath() throws ArtifactResolutionException, ArtifactNotFoundException { final MappluginArtifactMap = getPluginArtifactMap(); -Artifact plugin = pluginArtifactMap.get( "org.apache.maven.plugins:maven-surefire-plugin" ); +Class c = AbstractSurefireMojo.this.getClass(); +Artifact plugin; +if ( c.getName().equals( "org.apache.maven.plugin.failsafe.IntegrationTestMojo" ) ) --- End diff -- I guess this is in method `getProviderClasspath()` Please split the method in two. First it would call `protected abstract Artifact getMojoArtifact()` and then the original statement `return dependencyResolver.addProviderToClasspath( pluginArtifactMap, plugin );` where `plugin` is `Artifact`. Then force both subclasse to implement `getMojoArtifact` which means surefire mojo will implement it as follows: `final Map pluginArtifactMap = getPluginArtifactMap(); Artifact plugin = pluginArtifactMap.get( "org.apache.maven.plugins:maven-surefire-plugin" );`. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user jon-bell commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130447222 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT --- End diff -- I did a `mvn verify` from the top level. I will do a `mvn install -P run-its` now. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user jon-bell commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130446456 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT + + + + org.apache.maven.surefire + surefire-api + ${surefire.version} + + + + + + +src/main/resources/META-INF +META-INF + + + + +org.apache.maven.plugins +maven-compiler-plugin --- End diff -- Thanks. I will clean this up. FYI, the entire pom.xml is copied from the [SUREFIRE-141 IT pom.xml](https://github.com/apache/maven-surefire/blob/cba4adb1b93002c5b4bb2d2f22f461cc53bd8738/surefire-integration-tests/src/test/resources/surefire-141-pluggableproviders-provider/pom.xml). --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user Tibor17 commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130445462 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT + + + + org.apache.maven.surefire + surefire-api + ${surefire.version} + + + + + + +src/main/resources/META-INF +META-INF + + + + +org.apache.maven.plugins +maven-compiler-plugin --- End diff -- This plugin is again in parent pom. Not necessary here. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user Tibor17 commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130445317 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT + + + + org.apache.maven.surefire + surefire-api --- End diff -- Why? See the `build.log` in target and you will see project version and all necessary dependencies hidden in the fork transitive deps. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
Github user Tibor17 commented on a diff in the pull request: https://github.com/apache/maven-surefire/pull/161#discussion_r130444914 --- Diff: surefire-integration-tests/src/test/resources/surefire-1396-pluggableproviders-classpath-provider/pom.xml --- @@ -0,0 +1,61 @@ + + +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/xsd/maven-4.0.0.xsd;> + 4.0.0 + + org.apache.maven.plugins.surefire + surefire-test-classpath-provider + 1.0-SNAPSHOT + Test provider + + +2.21-SNAPSHOT --- End diff -- Pls do not use this property. It comes from [parent pom](https://github.com/apache/maven-surefire/blob/master/surefire-integration-tests/src/test/resources/pom.xml). Did you run the build like this `mvn install -P run-its`? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org
[GitHub] maven-surefire pull request #161: SUREFIRE-1396: Provider class path is inco...
GitHub user jon-bell opened a pull request: https://github.com/apache/maven-surefire/pull/161 SUREFIRE-1396: Provider class path is incorrect for custom provider in Failsafe Hi, When using a custom Surefire provider with Surefire (not Failsafe), the "provider classpath" contains only the provider and surefire-api. However, when using a custom provider with Failsafe, the provider class path ends up including a lot more... it seems like perhaps all plugins that are loaded? This has caused some mayhem for me when using a custom provider in projects that use a specific version of SLF4J... because then failsafe forces 1.5.6 to be loaded (from this process of incorrectly finding the custom provider), causing a crash. This PR contains an integration test case showing the bug and a patch to solve it. You can merge this pull request into a Git repository by running: $ git pull https://github.com/jon-bell/maven-surefire SUREFIRE-1396 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/maven-surefire/pull/161.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #161 commit 04f66cdd828d131a028eb400d1ed26fe104fe3f2 Author: Jonathan BellDate: 2017-07-25T03:43:36Z SUREFIRE-1396: Test case demonstrating broken handling of classpath for custom runners in failsafe, plus a fix --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. --- - To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org For additional commands, e-mail: dev-h...@maven.apache.org