首页 > 解决方案 > 如何通过 .bat 文件运行任何 jar 文件?

问题描述

我的命令是 java -jar my-jar-1.0.0-SNAPSHOT.jar

我想创建一个 bat 文件来运行此命令,而不管 SNAPSHOT 版本如何。这个 jar 位于我写的D驱动器中:

@ECHO ON
D:
cd "D:\Code\target"
java -jar my-jar-1.0.0-SNAPSHOT.jar

但问题是当我的 SNAPSHOT 版本发生变化时,我必须再次编辑 bat 文件。我有任何命令或方式,以便 bat 文件运行的任何版本。

java -jar my-jar-<any-version>-SNAPSHOT.jar

或者

java -jar my-jar-<any-SNAPSHOT>.jar

标签: javabatch-filecmdjar

解决方案


您可以尝试在中使用for循环

for %I in ("D:\Code\target\my-jar-*-SNAPSHOT.jar") do @(pushd "%~dpI." && (java -jar "%~nxI" & popd))

%中的 - 符号加倍:

for %%I in ("D:\Code\target\my-jar-*-SNAPSHOT.jar") do @(
    pushd "%%~dpI." && (
        java -jar "%%~nxI"
        popd
    )
)

推荐阅读