Calculate java home from java command (#716)

This commit is contained in:
James Z.M. Gao
2022-10-17 02:26:35 +08:00
committed by GitHub
parent e1e5c088af
commit c94ee72a30
2 changed files with 24 additions and 0 deletions

View File

@@ -44,6 +44,7 @@ import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import org.mvndaemon.mvnd.common.Environment;
import org.mvndaemon.mvnd.common.InterpolationHelper;
import org.mvndaemon.mvnd.common.Os;
import org.mvndaemon.mvnd.common.OsUtils;
import org.mvndaemon.mvnd.common.SocketFamily;
import org.mvndaemon.mvnd.common.TimeUtils;
import org.slf4j.Logger;
@@ -137,6 +138,9 @@ public class DaemonParameters {
.orLocalProperty(provider, globalPropertiesPath())
.orSystemProperty()
.orEnvironmentVariable()
.or(new ValueSource(
description -> description.append("java command"),
this::javaHomeFromPath))
.orFail()
.asPath();
try {
@@ -146,6 +150,14 @@ public class DaemonParameters {
}
}
private String javaHomeFromPath() {
final String jHome = OsUtils.findJavaHomeFromPath();
if (null != jHome) {
System.setProperty(Environment.JAVA_HOME.getProperty(), jHome);
}
return jHome;
}
public Path userDir() {
return value(Environment.USER_DIR)
.orSystemProperty()