【发布时间】:2014-03-28 08:10:21
【问题描述】:
我正在编写一个简单的批处理脚本来更快地执行游戏(出于开发环境的目的),但是我似乎无法将适当的命令行参数传递给可执行文件:
@ECHO OFF
set USERNAME=Testing
set MCDIR=%APPDATA%/.minecraft/
set GAMEDIR=%MCDIR%/versions/1.7.5/
set NATIVES=%GAMEDIR%/natives/
java -client -Xmx512M -Xms512M ^
-Djava.library.path=%NATIVES% ^
-cp %GAMEDIR%/1.7.5.jar:^
%MCDIR%/libraries/java3d/vecmath/1.3.1/vecmath-1.3.1.jar:^
%MCDIR%/libraries/net/sf/trove4j/trove4j/3.0.3/trove4j-3.0.3.jar:^
##etc... lots of libs
%MCDIR%/libraries/org/lwjgl/lwjgl/lwjgl_util/2.9.1/lwjgl_util-2.9.1.jar:^
%MCDIR%/libraries/org/lwjgl/lwjgl/lwjgl-platform/2.9.1/lwjgl-platform-2.9.1-natives-windows.jar:^
%MCDIR%/libraries/net/java/jinput/jinput-platform/2.0.5/jinput-platform-2.0.5-natives-windows.jar:^
net.minecraft.client.main.Main --username=%USERNAME% --version 1.7.5 --gameDir %MCDIR% --assetsDir %MCDIR%/assets --userProperties {} --accessToken Offline
pause
然而,这个小脚本似乎在它超过client.main.Main 的任何参数时都失败了,有效地将其视为 JVM 参数而不是命令行程序参数。当使用-cp 而不是-jar 在java 中调用程序时,是否有不同的方法来执行此操作?如果没有,我做错了什么?
【问题讨论】:
标签: java command-line-arguments