【问题标题】:Set Java path in command line for only one directory在命令行中为一个目录设置 Java 路径
【发布时间】:2015-08-31 13:32:43
【问题描述】:

我正在运行一个使用 Scala 2.10 工作的程序,并且与 Java 8 不兼容,仅与 Java 7 兼容。在 Windows 7 命令行中,如何设置 Java 路径以仅对该目录使用 Java 7?

【问题讨论】:

  • 我不相信 Windows 允许您拥有每个文件夹的环境变量。为什么不制作一个 .bat 文件来设置 JAVA_HOME 然后运行您的程序?

标签: java command-line command-prompt


【解决方案1】:

您可以像这样创建 2 个批处理文件,一个用于 java 7,一个用于 java 8 -

jdk7.bat

@echo off
echo Setting JAVA_HOME
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_11
echo setting PATH
set PATH=C:\Program Files\Java\jdk1.7.0_11\bin;%PATH%
echo Display java version
java -version

jdk8.bat

@echo off
echo Setting JAVA_HOME
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_11
echo setting PATH
set PATH=C:\Program Files\Java\jdk1.7.8_11\bin;%PATH%
echo Display java version
java -version

您可以在它们之间快速切换运行这些批处理文件。

【讨论】:

    【解决方案2】:

    如果程序使用批处理启动,则在程序启动前添加这一行:

    SET JAVA_HOME="C:\Program Files\Java7\Java.exe"
    

    (这只是一个示例,您的计算机上的目录可能不同)

    如果程序不使用这样的批处理(您可以识别它,因为它以 .cmd 或 .bat 结尾)创建这样的文件并使用它来启动程序:

    @echo off
    SET JAVA_HOME=...
    ThisIsMyFancyScalaProgram.Exe
    

    【讨论】:

      【解决方案3】:

      添加系统环境变量:

      setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0"
      
      setx PATH "%PATH%;%JAVA_HOME%\bin";
      

      更新系统环境变量:

      setx -m JAVA_HOME "C:\Program Files\Java\jdk1.8.0"
      
      setx -m PATH "%PATH%;%JAVA_HOME%\bin";
      

      【讨论】:

      • Razibs 回答的改进在哪里?
      猜你喜欢
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-07
      • 2021-10-07
      • 2012-02-15
      相关资源
      最近更新 更多