我应该在环境变量 PATH 中同时添加 JAVA_HOME 和 JRE_HOME 吗?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/27996603/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-11 05:25:52  来源:igfitidea点击:

Should I add both JAVA_HOME and JRE_HOME in environmental variable, PATH?

javatomcat8

提问by Reagan Ochora

I ran into this error while setting up my Tomcat and Java environmental path:

我在设置 Tomcat 和 Java 环境路径时遇到了这个错误:

Neither the JAVA_HOME nor the JRE_HOME environmental variables is defined. At least one of the 2 environmental variables is needed to run this program.

JAVA_HOME 和 JRE_HOME 环境变量均未定义。运行此程序至少需要 2 个环境变量之一。

In the user variables: I created JAVA_HOMEvariables and add C:\Program Files\Java\jdk1.8.0_25to its path. and then did an edit of system variable PATH, added C:\Program Files\Java\jdk1.8.0_25;to the beginning of the its path. I also created JRE_HOMEin user variable and added C:\Program Files\Java\jre1.8.0_25to its path.

在用户变量中:我创建了JAVA_HOME变量并将C:\Program Files\Java\jdk1.8.0_25 添加到其路径中。然后编辑系统变量PATH,添加C:\Program Files\Java\jdk1.8.0_25; 到它的路径的开始。我还在用户变量中创建了JRE_HOME并将C:\Program Files\Java\jre1.8.0_25 添加到其路径中。

Is it necessary to create JRE_HOME and should I add the JRE path to the system variable also?

是否有必要创建 JRE_HOME,我是否也应该将 JRE 路径添加到系统变量中?

回答by Vignesh Shiv

Try this...

尝试这个...

For Java,

对于 Java

In the User variables, add PATHvalue is C:\Program Files\Java\jdk1.8.0_25\bin;

在用户变量中,添加PATH值是C:\Program Files\Java\jdk1.8.0_25\bin;

For Tomcat

对于 Tomcat

In the System variables, add JAVA_HOMEvalue is C:\Program Files\Java\jdk1.8.0_25

在系统变量中,添加JAVA_HOME值是C:\Program Files\Java\jdk1.8.0_25

Now classpath has been set to your machine. You can access java from anywhere in your machine.

现在类路径已设置为您的机器。您可以从机器的任何位置访问 java。

After Done this, Go to Command Promptand go to ApacheTomcat*x.xand move to binfolder,,

完成此操作后,转到Command Prompt并转到ApacheTomcat*xx并移至bin文件夹,

Start the Server

启动服务器

startup.bat

For check Tomcat running status, Go to your browser, and Paste the URL,

要检查 Tomcat 运行状态,请转到浏览器,然后粘贴 URL,

http://localhost:8080/

http://本地主机:8080/

Stop the Server

停止服务器

shutdown.bat

回答by Salient Sage

You really do not need to add JRE_HOMEto the system variables. Tomcat looks for JAVA_HOMEor JRE_HOMEto get itself start. This is because tomcat require some java library to get itself started. Tomcat will provide additional debugging functionality if Jdk is provided instead of Jre. Additional details here

你真的不需要添加JRE_HOME到系统变量中。Tomcat 寻找JAVA_HOMEJRE_HOME让自己开始。这是因为 tomcat 需要一些 java 库才能启动。如果提供 Jdk 而不是 Jre,Tomcat 将提供额外的调试功能。此处的其他详细信息

Adding {JAVA_HOME_DIR}/binto your path would enable to access java from anywhere.

添加{JAVA_HOME_DIR}/bin到您的路径将允许从任何地方访问 java。

回答by Feras

After modifying system variables , it is important to open new console window

修改系统变量后,打开新的控制台窗口很重要

回答by Feras

This answer explains all the steps with screenshots and examples

此答案通过屏幕截图和示例解释了所有步骤

Better Use the 8.3 directory-format. In fact No spaces, ever. 8.3 naming

更好地使用 8.3 目录格式。事实上,没有空格,永远。 8.3 命名

  1. JAVA_HOME- your JDKfolder
    C:\Program Files\Java\jdk1.6.0_45== C:\PROGRA~1\Java\JDK16~1.0_4
    C:\Program Files\Java\jdk1.7.0_71== C:\PROGRA~1\Java\JDK17~1.0_7
    C:\Program Files\Java\jdk1.8.0_25== C:\PROGRA~1\Java\JDK18~1.0_2
    C:\Program Files\Java\jdk1.9.0== C:\PROGRA~1\Java\JDK19~1.0

  2. JRE_HOME
    C:\Program Files\Java\jre6== C:\PROGRA~1\Java\jre6
    C:\Program Files\Java\jre7== C:\PROGRA~1\Java\jre7
    C:\Program Files\Java\jre1.8.0_25== C:\PROGRA~1\Java\JRE18~1.0_2
    C:\Program Files\Java\jre1.9.0== C:\PROGRA~1\Java\JRE19~1.0

  3. Addition to PATH- best practice!

    • USE WINDOWS+R
    • Enter C:\Windows\system32\systempropertiesadvanced.exe
    • Add ;C:\ProgramData\Oracle\Java\javapath;to the end of PATH
      (System Variables not User Variables).

    • Click OK, explore to C:\ProgramData\Oracle\Java\and rename javapathfolder (from C:\ProgramData\Oracle\Java\javapath\) to javapath_old.

    • Create new folder named javapath.
    • Start CMD and browse into (the now empty) C:\ProgramData\Oracle\Java\javapath\.
    • Run to create symbolic links:

      1. ln -s "C:\Program Files\Java\jre7\bin\java.exe" java.exe
      2. ln -s "C:\Program Files\Java\jre7\bin\javaw.exe" javaw.exe
      3. ln -s "C:\Program Files\Java\jre7\bin\javaws.exe" javaws.exe

    • Done with PATHand *_HOME, now let's continue with the Windows Registry.
  4. Open up you preferred registry editor (Registry Workshopis the best), browse HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kitnotice all installed versions are shown as keys, double click CurrentVersion(REG_SZ value) and modify its data to your preferred SDK version, mine is 1.7 (For Android Studio) Registry edit

  5. Do the same for HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment(with CurrentVersion) Registry edit

  6. Close down java-based programs such as eclipse or IntelliJ,

    • Open up task-manager- processes tab,
    • Look for explorer.exe, cmd.exeand java(*something*).exeprograms,
    • Right-click eache and click End Task(not "End Process-Tree"!)
    • Click File?New Task?enter explorer.exe
      .
  1. JAVA_HOME- 你的JDK文件夹
    C:\Program Files\Java\jdk1.6.0_45== C:\PROGRA~1\Java\JDK16~1.0_4
    C:\Program Files\Java\jdk1.7.0_71== C:\PROGRA~1\Java\JDK17~1.0_7
    C:\Program Files\Java\jdk1.8.0_25== C:\PROGRA~1\Java\JDK18~1.0_2
    C:\Program Files\Java\jdk1.9.0==C:\PROGRA~1\Java\JDK19~1.0

  2. JRE_HOME
    C:\Program Files\Java\jre6== C:\PROGRA~1\Java\jre6
    C:\Program Files\Java\jre7== C:\PROGRA~1\Java\jre7
    C:\Program Files\Java\jre1.8.0_25== C:\PROGRA~1\Java\JRE18~1.0_2
    C:\Program Files\Java\jre1.9.0==C:\PROGRA~1\Java\JRE19~1.0

  3. 除了PATH- 最佳实践!

    • 使用WINDOWS+R
    • 进入 C:\Windows\system32\systempropertiesadvanced.exe
    • 添加;C:\ProgramData\Oracle\Java\javapath;PATH
      (系统变量不是用户变量)的末尾。

    • 单击“确定”,浏览至C:\ProgramData\Oracle\Java\并将javapath文件夹(从C:\ProgramData\Oracle\Java\javapath\)重命名为javapath_old

    • 创建名为 的新文件夹javapath
    • 启动 CMD 并浏览到(现在为空)C:\ProgramData\Oracle\Java\javapath\
    • 运行以创建符号链接:

      1. ln -s "C:\Program Files\Java\jre7\bin\java.exe" java.exe
      2. ln -s "C:\Program Files\Java\jre7\bin\javaw.exe" javaw.exe
      3. ln -s "C:\Program Files\Java\jre7\bin\javaws.exe" javaws.exe

    • 完成PATH*_HOME,现在让我们继续 Windows 注册表。
  4. 打开您喜欢的注册表编辑器(注册表工作室是最好的),浏览HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit注意所有已安装的版本都显示为键,双击CurrentVersion(REG_SZ 值)并将其数据修改为您喜欢的 SDK 版本,我的是 1.7(对于Android Studio注册表编辑

  5. HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment(with CurrentVersion) 做同样的事情注册表编辑

  6. 关闭基于 Java 的程序,例如 eclipse 或IntelliJ

    • 打开任务管理器进程选项卡,
    • 寻找explorer.exe,cmd.exejava(*something*).exe程序,
    • 右键单击 eache 并单击结束任务(不是“结束进程树”!)
    • 单击File? New Task?输入explorer.exe

The changes you've done above were applied successfully
No need to reboot, no need to log-off/on again.

您在上面所做的更改已成功应用
无需重新启动,无需再次注销/登录。