You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Rüdiger Groß-Hardt (JIRA)" <ji...@apache.org> on 2018/01/10 16:41:10 UTC
[jira] [Created] (SUREFIRE-1459) mvn+java7 and POM with toolchains
targeting java8 fail in surefire plugin
Rüdiger Groß-Hardt created SUREFIRE-1459:
--------------------------------------------
Summary: mvn+java7 and POM with toolchains targeting java8 fail in surefire plugin
Key: SUREFIRE-1459
URL: https://issues.apache.org/jira/browse/SUREFIRE-1459
Project: Maven Surefire
Issue Type: Improvement
Components: Maven Surefire Plugin
Affects Versions: 2.20.1
Environment: Maven 3.3.9 started with JDK 7
(on Windows Server 2012)
Reporter: Rüdiger Groß-Hardt
We compile and test with a POM using a toolchain configuration targeting JDK 8. Maven itself runs with JDK 7. If we run tests with the maven-surefire-plugin and forkCount=1 and reuseForks=false the build fails with
_java.lang.UnsupportedClassVersionError: SomeTestClass : Unsupported major.minor version 52.0_
If we set reuseForks=true, it builds fine. Other combinations seem to fail, if the plugin code running in the JDK 7 context presumably needs to use reflections to enumerate test classes.
As newbies to toolchains, we were assuming, that toolchains enabled us to effectively decouple the JDK version used to run maven from the JDK version used to run the tests.
This problem took us quite some time to solve. As an improvement I would suggest a meaningful warning or error message stating that the surefire plugin must be run with a JDK version higher than or equal to the version of the target JDK from the toolchain configuration.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)