【发布时间】:2021-10-24 22:21:37
【问题描述】:
我正在尝试使用 Java 中的 jpackage 工具将 jar 文件打包成可执行文件,但是使用 Windows 10 和 Java 版本的命令提示符中无法识别该命令:
> java --version
java 17.0.1 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)
我已经安装了完整的 JDK,并且可以识别命令 javac。
我用“where java javac jpackage”命令检查了我的电脑,它只在 CommonFiles 文件夹中找到了前两个。
我查看了文件夹路径“ProgramFiles\Java\jdk-17.0.1\jmods”,“jdk.jlink.jmod”和“jdk.jpackage.jmod”文件都存在。
有人可以帮我弄清楚为什么 Windows 无法识别该工具吗?
【问题讨论】:
-
javac被识别了吗? -
你确定你有 JDK 而不仅仅是 JRE?
-
你需要一个完整的 JDK
-
嗯......这很奇怪,因为 Oracle 在 Java 8 之后停止发布“JRE”发行版。我想知道 OP 是否以不寻常的方式设置了 PATH?
-
您是否已经或以前在此系统上安装了较旧的 (where java javac jpackage(如果在powershell 中使用
where.exe来避免where-object 别名)并查看前两个实际上是否在\Program Files [(x86)]\Common Files或\ProgramData某处。在 CMD 中执行path并查找所有与 Oracle 相关的条目;在 powershell 中使用$env:path -split ';'更容易查看。