运行 java 在命令行中使用用户输入的项目

Running java project in command line with user input

我有一个 java 项目,我在命令行中 运行ning。我已经为 运行 项目创建了一个 .bat 文件。然而,我的 java 项目在开始 运行ning 之前必须接受 4 个参数,这在我的 .bat 文件中是这样工作的....

@echo off
pushd %~dp0
java -jar dist/prog.jar 5 6 7 3

pause

(5 6 7 3 being the arguments passed to String[] args)

但是,我不想在 .bat 文件中输入要传递给 String[] args 的具体参数,我希望它由用户输入传递,以便我可以输入不同的值作为我每次在命令行中的参数 运行 它。我该怎么做?

您可以使用 % 替换来传递给 .cmd 的参数

@echo off
pushd %~dp0
REM %* forwards all parameters
java -jar dist/Election_real.jar %*
pause

然后调用yourcmd.cmd 5 6 7 8

如果你想询问这些参数,你会去

@echo off
pushd %~dp0
set /p nr1=Enter Nr1:
set /p nr2=Enter Nr2:
set /p nr3=Enter Nr3:
set /p nr4=Enter Nr4: 
java -jar dist/Election_real.jar %nr1% %nr2% %nr3% %nr4%
pause