[ https://issues.apache.org/jira/browse/MNG-5756?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16008656#comment-16008656 ]
ASF GitHub Bot commented on MNG-5756: ------------------------------------- GitHub user marcelosv opened a pull request: https://github.com/apache/maven/pull/115 Change out JAVA_HOME. Add JRE used. JRE used print /jre and JAVA_HOME⦠I read the discursion of issue MNG-5756 and I change code out for JAVA_HOME and JRE. Now, print two information to JAVA. You can merge this pull request into a Git repository by running: $ git pull https://github.com/marcelosv/maven MNG-5756-Java-home-output Alternatively you can review and apply these changes as the patch at: https://github.com/apache/maven/pull/115.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #115 ---- commit 8c10f3addc2eb35ba61792cd97c98290334c040c Author: Marcelo <marc...@ceossistemas.com.br> Date: 2017-05-12T20:16:35Z Change out JAVA_HOME. Add JRE used. JRE used print /jre and JAVA_HOME print equal var configured ---- > Java home output in mvn -v is misleading > ---------------------------------------- > > Key: MNG-5756 > URL: https://issues.apache.org/jira/browse/MNG-5756 > Project: Maven > Issue Type: Improvement > Components: Command Line > Affects Versions: 3.2.5, 3.3.3 > Environment: any > Reporter: Jarkko Rantavuori > Priority: Minor > > For example on my windows box, mvn -v prints the following: > {code} > Java home: C:\Program Files (x86)\Java\jdk1.7.0_51\jre > {code} > But my JAVA_HOME is actually > {code} > > echo %JAVA_HOME% > C:\Program Files (x86)\Java\jdk1.7.0_51 > {code} > In the source code, the line comes from: > https://git-wip-us.apache.org/repos/asf?p=maven.git;a=blob;f=maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java#l63 > {code} > version.append( "Java home: " ).append( System.getProperty( "java.home", > "<unknown java home>" ) ).append( ls ); > {code} > which is using property "java.home" to fetch java home. However, "java.home" > property is not JAVA_HOME! This is explained in detail in here: > http://javahowto.blogspot.fi/2006/05/javahome-vs-javahome.html > To quote: > {quote} > What's the difference between JAVA_HOME and java.home? > JAVA_HOME is the JDK install directory, e.g., C:\jdk5. It's meant to be > set as an environment variable and referenced in Windows batch files or Unix > scripts. I always have it in my Windows Control Panel and .tcsh files,along > with other common environment variables. Some Java applications use the name > jdk.home for this purpose, which I think is a better name. But JAVA_HOME has > been used since the beginning and is now a convention. > java.home is the JRE install directory, e.g., C:\jdk5\jre, or C:\Program > Files\Java\jre1.5.0_06. Unlike JAVA_HOME, I never seen java.home as an > environment variable. java.home is a build-in Java system property, whose > value is the JRE install directory. Since all Java system properties are also > exposed as Ant build properties, you can also use ${java.home} in > build files. > Would jre.home be a better name? Maybe, but I don't think Sun will change > it. > {quote} > This is a source of constant confusion. Some stackoverflow threads to > illustrate: > http://stackoverflow.com/questions/15279586/java-home-in-maven > http://stackoverflow.com/questions/17620531/maven-pointing-to-jre-instead-of-jdk > The correct way to print JAVA_HOME would be to use > System.getenv("JAVA_HOME"). Either that should be used or current output > should be changed so it wouldn't be so misleading. -- This message was sent by Atlassian JIRA (v6.3.15#6346)