运行 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。
我把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。