[ https://issues.apache.org/jira/browse/MTOOLCHAINS-44?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17820485#comment-17820485 ]
Elliotte Rusty Harold commented on MTOOLCHAINS-44: -------------------------------------------------- My gut is that if a toolchain can't be located, we shouldn't simply use JAVA_HOME. Erroring is better here. However, we might be able to define some defaults for certain JDK toolchains. The common case for toolchains is that the user wants a specific JDK version. If that's all they request, and toolchains.xml can't be found, or doesn't contain a matching JDK version, maven could still search in standard locations locally. For instance, suppose this is the configuration {{ <configuration> <toolchains> <jdk> <version>1.8</version> </jdk> </toolchains> </configuration>}} On a Mac you could run "/usr/libexec/java_home -V" to find a JDK that provides version 1.8. > Use default JDK if it matches the request and no other toolchain is defined > --------------------------------------------------------------------------- > > Key: MTOOLCHAINS-44 > URL: https://issues.apache.org/jira/browse/MTOOLCHAINS-44 > Project: Maven Toolchains Plugin > Issue Type: Improvement > Affects Versions: 3.1.0 > Reporter: dennis lucero > Priority: Major > > Currently it is needed to have the toolchains defined in the toolchains.xml > file. The [Maven Docker images|https://hub.docker.com/_/maven] do not > [include a useful toolchains > file|https://github.com/carlossg/docker-maven/issues/303]. But since it’s > possible to [derive a usable toolchain from the system > properties|https://github.com/carlossg/docker-maven/issues/303#issuecomment-1310895631], > it should not be required to store that information in the toolchains.xml > file. Instead, Maven should check if the toolchain request could be fulfilled > by the JDK running Maven. > I’m not sure if it’s reasonable to do this in all cases or only if the > toolchains file does not contain any toolchain. For example, if the > toolchains file only contains a Java 16 toolchain and the project requires > Java 17 (exactly, not 17 or later) and Maven is run with Java 17, it would be > possible to build the project (with Java 17), but probably not a good idea > since it will fail when the Java installation Maven is running on is updated > to version 18. -- This message was sent by Atlassian Jira (v8.20.10#820010)