You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Tibor Digana (Jira)" <ji...@apache.org> on 2020/04/24 19:40:00 UTC

[jira] [Closed] (SUREFIRE-1234) Allow to configure JVM for tests by referencing a toolchain entry

     [ https://issues.apache.org/jira/browse/SUREFIRE-1234?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Digana closed SUREFIRE-1234.
----------------------------------
    Resolution: Fixed

https://gitbox.apache.org/repos/asf?p=maven-surefire.git;a=commit;h=e0304d973bcb24a020aa8fb0d05e6230b217a577

> Allow to configure JVM for tests by referencing a toolchain entry
> -----------------------------------------------------------------
>
>                 Key: SUREFIRE-1234
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1234
>             Project: Maven Surefire
>          Issue Type: New Feature
>            Reporter: Gunnar Morling
>            Assignee: Tibor Digana
>            Priority: Major
>             Fix For: 3.0.0-M5
>
>
> There is the property "jvm" which allows to specify a specific JVM to run on the tests through Surefire. This puts in an absolute path into my POM, though, which makes the build less portable.
> Therefore I propose to allow an alternative option which allows to refer to specific JDKs configured through toolchains.xml:
> {code}
> <plugin>
>     <groupId>org.apache.maven.plugins</groupId>
>     <artifactId>maven-surefire-plugin</artifactId>
>     <configuration>
>         <toolchain>
>             <jdk>
>                 <version>1.7</version>
>                 <vendor>sun</vendor>
>             </jdk>
>         </toolchains> 
>     </configuration>
> </plugin>
> {code}
> Note that this allows to use a specific toolchain just for tests, independently what's configured as toolchain for the overall build through the maven-toolchain-plugin. This e.g. allows to run the build on JDK 8 but run tests on JDK/JRE 7 (which is a frequent requirement for our projects). Or one could have several Surefire executions, running tests on different Java versions.
> The toolchain to use should be injectable through a property, so one can easily configure it, e.g. for specific Jenkins runs: "... -Dsurefire.toolchain=jdk:1.7" or "... -Dsurefire.toolchain=jdk:1.7:sun".



--
This message was sent by Atlassian Jira
(v8.3.4#803005)