批处理文件以运行带有参数的jar文件

新手上路,请多包涵

如何运行批处理文件并将参数传递给 jar 文件?

这行不通

mybat.bat文件

java -jar log_parser.jar %1 %2 %3 %4

运行bat文件

C:\>log_parser.bat -file=C:\\trace_small.log -str=Storing

java 只看到 -file

原文由 VextoR 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 604
2 个回答

我只是尝试了一个小的 java 程序,它只将参数转储到屏幕上:

 public static void main(String[] args)
{
    for(String s : args)
    {
        System.out.println(s);
    }
}

和以下批处理文件:

 java -jar test.jar %1 %2 %3 %4

我得到了以下结果

-file
C:\\trace_small.log
-str
Storing

对于与您相同的命令行…等号“=”消失了。现在,如果你将批处理文件运行到这个:

 java -jar test.jar %*

你会得到另一个结果(这可能是你所期望的 - 不清楚)

 -file=C:\\trace_small.log
-str=Storing

这种 %\* 语法的优点是它通过接受任意数量的参数而更具可扩展性。

希望这会有所帮助,但我建议您查看您的代码并添加一些调试语句以了解您在哪里“丢失”了部分输入。

原文由 gastush 发布,翻译遵循 CC BY-SA 3.0 许可协议

例如在 Windows 10 x64 中打开街道地图编辑器

> cd "C:\Program Files\Java\jre1.8.0_161\bin\"

> javaw.exe -Xmx2048m -jar "C:\Program Files (x86)\JOSM\josm-tested.jar"

原文由 Martin 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏