Switching to java 11 from java 8

后端 未结 4 1821
误落风尘
误落风尘 2021-01-05 01:55

I have downloaded and installed oraclejdk11 from oracle official site and modified PATH & JAVA_HOME variable in system environment variable on windows

C:\\Users\

相关标签:
4条回答
  • 2021-01-05 02:29

    The JDK includes the JRE which you can launch by using the java executable in the bin folder. You use this executable just like any other executable.

    When you type java in the command line it is actually shorthand. It searches your PATH until it finds the first matching java executable. If you want to specify a different java executable you can give the absolute path to the executable.

    C:\Users\Avril> "C:\Program Files\Java\jdk-11.0.1\bin\java" -jar path\to\file.jar
    

    You may be wondering, if you've set JAVA_HOME and PATH to point to JDK-11, why does java -version still use Java 8?

    Take a look at your PATH and you'll likely find something like C:\ProgramData\Oracle\Java\javapath as one of the first entries (see this). This entry was added automatically when you installed Java 8 and points to the Java 8 executables (java, javaw, and javaws). Since it's before your %JAVA_HOME%\bin entry, it takes precedence. However, ...\javapath doesn't contain javac and that's why javac -version used JAVA_HOME (Java 11).

    0 讨论(0)
  • 2021-01-05 02:32

    bin folder contains all the traditional JRE tools. In Java 11, both JDK and JRE tools are consolidated so that there is no JRE within JDK 11.

    0 讨论(0)
  • 2021-01-05 02:37

    In order to execte program from another folder than bin using java 11 you must set the JAVA_HOME path as follows from CMD:

    Open CMD as Administrator

    Set JAVA_HOME to JDK 11 bin folder

    setx -m JAVA_HOME "C:\Program File\Java\..."
    
    0 讨论(0)
  • 2021-01-05 02:42

    I upgraded to JDK 11 from JDK 8. After adding Java 11 to the path [ point path up to

    bin foler ] and JAVA_HOME [ only upto jdk folder (don't include bin ) ]

    successfully,

    java -version was still pointing to the previous java version (java 8 in my case.)

    Then, I ran a command "setx -m JAVA_HOME "C:\Program Files\Java\jdk-11.0.7"

    Now java -version or javac -version both shows java 11.

    I hope it helps you too.

    0 讨论(0)
提交回复
热议问题