Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java &引用;“爪哇之家”;“运行时不显示”;mvn-v";在cmd中_Java_Maven - Fatal编程技术网

Java &引用;“爪哇之家”;“运行时不显示”;mvn-v";在cmd中

Java &引用;“爪哇之家”;“运行时不显示”;mvn-v";在cmd中,java,maven,Java,Maven,在命令提示符下运行“mvn-v”时,我最初收到一个错误,说JavaHome设置为JRE而不是JDK。我已经确保从oracle的网站(而不是JRE)安装了JDK12。在多次尝试之后,在添加JAVA_HOME作为用户变量后,该错误消失了(之前已经在系统变量中添加了该变量) 然而,在命令提示符下运行“mvn-v”时,我现在根本看不到“JavaHome”。我的结果如下所示: C:\Users\uzmaf>mvn-v Apache Maven 3.6.1(d66c9c0b3152b2e69ee9bac18

在命令提示符下运行“mvn-v”时,我最初收到一个错误,说JavaHome设置为JRE而不是JDK。我已经确保从oracle的网站(而不是JRE)安装了JDK12。在多次尝试之后,在添加JAVA_HOME作为用户变量后,该错误消失了(之前已经在系统变量中添加了该变量)

然而,在命令提示符下运行“mvn-v”时,我现在根本看不到“JavaHome”。我的结果如下所示:

C:\Users\uzmaf>mvn-v Apache Maven 3.6.1(d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555;2019-04-04T14:00:29-05:00) Maven主页:C:\Program Files\apache-Maven-3.6.1-bin\apache-Maven-3.6.1\bin。。 Java版本:12.0.1,供应商:Oracle公司,运行时:C:\Program Files\Java\jdk-12.0.1 默认区域设置:en_US,平台编码:Cp1252 操作系统名称:“windows 10”,版本:“10.0”,arch:“amd64”,系列:“windows”


我这里缺少什么?

在Maven 3.6.1版中,他们已经从version命令中的display中删除了“JAVA HOME”属性,但这本身不应该造成任何问题。您可以参考以下链接中的CLIReportingUtils.showVersion()方法:

公共静态字符串showVersion()
{
最后一个字符串ls=System.getProperty(“line.separator”);
Properties=getBuildProperties();
StringBuilder版本=新的StringBuilder(256);
append(buffer().strong(createMavenVersionString(properties)).append(ls);
version.append(减少(
properties.getProperty(“distributionShortName”)+“home:”+System.getProperty(“maven.home”,
"" ) ) )
.附加(ls);
append(“Java版本:”).append(
System.getProperty(“java.version”,”).append(“,vendor:”).append(
System.getProperty(“java.vendor”,”).append(“,runtime:”).append(
System.getProperty(“java.home”,”).append(ls);
version.append(“默认语言环境:”).append(语言环境.getDefault()).append(,平台编码:).append(
System.getProperty(“file.encoding”,”).append(ls);
version.append(“操作系统名称:\”).append(操作系统名称)。append(“\”,版本:\”).append(操作系统版本)。append(
“\”,arch:\”).append(Os.Os\u arch.append(“\”,family:\”).append(Os.Os\u family.append(“\”);
返回version.toString();
}

上面不是说“Java版本:12.0.1,供应商:Oracle公司,运行时:C:\Program Files\Java\jdk-12.0.1”吗?请问您的问题是什么?据我所知,mvn-v正在做它应该做的事情,也就是输出您所列出的内容。
public static String showVersion()
{
    final String ls = System.getProperty( "line.separator" );
    Properties properties = getBuildProperties();
    StringBuilder version = new StringBuilder( 256 );
    version.append( buffer().strong( createMavenVersionString( properties ) ) ).append( ls );
    version.append( reduce(
        properties.getProperty( "distributionShortName" ) + " home: " + System.getProperty( "maven.home",
                                                                                            "<unknown Maven "
                                                                                                + "home>" ) ) )
        .append( ls );
    version.append( "Java version: " ).append(
        System.getProperty( "java.version", "<unknown Java version>" ) ).append( ", vendor: " ).append(
        System.getProperty( "java.vendor", "<unknown vendor>" ) ).append( ", runtime: " ).append(
        System.getProperty( "java.home", "<unknown runtime>" ) ).append( ls );
    version.append( "Default locale: " ).append( Locale.getDefault() ).append( ", platform encoding: " ).append(
        System.getProperty( "file.encoding", "<unknown encoding>" ) ).append( ls );
    version.append( "OS name: \"" ).append( Os.OS_NAME ).append( "\", version: \"" ).append( Os.OS_VERSION ).append(
        "\", arch: \"" ).append( Os.OS_ARCH ).append( "\", family: \"" ).append( Os.OS_FAMILY ).append( '\"' );
    return version.toString();
}