我刚刚尝试了一个仅将参数转储到屏幕的小型Java程序:
public static void main(String[] args){ for(String s : args) { System.out.println(s); }}和以下批处理文件:
java -jar test.jar %1 %2 %3 %4
我最终得到以下结果
-fileC:\trace_small.log-strStoring
对于与您相同的命令行,等号’=’消失了。现在,如果将批处理文件截断为此:
java -jar test.jar %*
您将获得另一个结果(可能是您期望的结果-不清楚)
-file=C:\trace_small.log-str=Storing
这种%*语法的优点在于,它可以通过接受任意数量的参数来扩展。
希望这会有所帮助,但我建议您看一下代码并添加一些调试语句,以了解您在“损失”输入的某些部分的位置。



