0
時傳遞Java命令行參數我正在編寫一個簡單的批處理腳本來更快地執行遊戲(用於開發環境目的),但是我似乎無法將相應的命令行參數傳遞給可執行文件:在使用-cp
@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中的程序時,是否有另外一種方法可以解決這個問題?如果不是,我做錯了什麼?
也可能需要刪除類路徑中最後一個目標元素的最後冒號。 – GregHNZ
奇怪的是,我周圍的新錯誤是「找不到主類'net.minecraft ... etc',但我只是將上面使用的1.7.5 jarfile扔進了jd-gui,它肯定存在。腳本錯了? – Rogue
發現了另一個問題,用冒號代替分號 – Rogue