1

我目前正在学习 Java 课程,出于安全原因,它不允许我们为 Java 编译器设置环境变量。我们一直要做的就是打开cmd然后放

set path="path_to_java"

这真的很烦人,因为当我们关闭命令行时,它会丢失路径。我能够创建 .bat 文件的一部分,但是当我执行它时,它会立即关闭。我知道你可以输入,PAUSE但它不会让我们插入任何 Java 代码。

有什么方法可以创建一个 .bat 文件并解决这个问题,所以当我双击它会创建路径变量并让我们编译 Java 代码?

我目前只有这个

SET PATH "path_to_compiler"
CLS
4

2 回答 2

3

你可以做几件事。一种方法是在某处(例如在您的配置文件文件夹中)创建您的批处理文件,并使其在您启动命令提示符时自动执行:

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d "%USERPROFILE%\init.cmd"

但是,由于您不允许设置持久性环境变量,因此也可能会禁止这样做。在这种情况下,您可以在桌面上创建批处理脚本的快捷方式,然后打开其属性并将目标更改为以下内容:

%COMSPEC% /k C:\path\to\your.cmd

%COMSPEC%是 CMD 可执行文件,该选项/k可防止它在脚本完成后自动关闭。

作为旁注,您可能希望将当前%PATH%包含在编译器的路径中,否则某些东西可能会停止工作(例如,因为某些命令行实用程序无法再找到):

set PATH=%PATH%;C:\javac\folder
于 2013-02-26T23:15:43.090 回答
0

我没有检查重复项,但我很确定我最近看到了一个关于这个的问题。无论如何,你引起了我对如何做到这一点的好奇心,所以我进行了实验,幸运的是我尝试的第一件事奏效了。

所以,基本上你应该拥有的是......

@echo off
::Add your code under here
set path=path_to_compiler
cls
call cmd

我必须问的一件事是,绝对有必要将变量称为“路径”而不是其他东西吗?我问这个是因为path它是解释器用来做事的一个重要变量。

无论如何,这基本上只是运行您的代码,然后在当前窗口中打开 cmd.exe。

于 2013-02-26T06:20:11.547 回答