运行 PATH 中的 Jar 文件

Run Jar Files in PATH

我把jar文件存放在C:\Users\myuser\javatools\avro-tools

并将它们添加到我的路径中:

echo %PATH%
...;
C:\Users\myuser\javatools\avro-tools;

我可以通过指定完整路径 运行 它们:

java -jar C:\Users\myuser\javatools\avro-tools\avro-tools-1.8.1.jar

但不能 运行 它们没有完整路径:

java -jar avro-tools-1.8.1.jar
Error: Unable to access jarfile avro-tools-1.8.1.jar

我需要 运行 jar 文件而不更改目录,也不指定这些完整路径。

更新:添加了%*

我建议创建一个批处理文件 运行 相反。

avro-tools-1.8.1.bat

@echo off
java -jar C:\Users\myuser\javatools\avro-tools\avro-tools-1.8.1.jar %*

.bat 文件放在 PATH 中的某处,然后 运行 只需键入:

avro-tools-1.8.1.bat -abc def

.bat 文件中的 %* 被传递给 .bat 文件的任何参数替换,因此 -abc def 参数被传递给 avro-tools 程序在 args 数组到 main 方法。


如果您安装了 Java 的多个版本,那么您可以在 运行 宁 .jar 文件时选择使用哪个版本,同时限定 java命令。

avro-tools-1.8.1.bat

@echo off
"C:\Program Files\Java\jdk1.8.0_181\java.exe" -jar C:\Users\myuser\javatools\avro-tools\avro-tools-1.8.1.jar %*

现在该代码将 运行 与 Java 8,即使 Java 8 不是您计算机上的默认值 Java。