【问题标题】:Execute jar cvf command by java code ( using Runtime.exec() method )通过 java 代码执行 jar cvf 命令(使用 Runtime.exec() 方法)
【发布时间】:2012-01-18 07:08:52
【问题描述】:

我正在使用Java代码执行bat文件通过以下java代码制作war文件

String command = "cmd /C start C:/processFolder/paas.bat";          
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);

这意味着它将执行 paas.bat 文件来完成一些工作。 paas.bat 中有一个命令:

jar cfv xxx.war */ .

但是,它不会将所有文件和文件夹 jar 到 xxx.war 中。有谁知道为什么会发生这种情况?谢谢!

【问题讨论】:

    标签: java command-line jar command war


    【解决方案1】:

    该命令使用当前工作目录,这与java程序不同。您可以更改脚本以执行 cd,然后调用 jar 命令。

     cd /d <path to folder where this should execute from>
     jar ....
    

    请从命令中捕获输出、错误和异常(如果有)并添加到您的问题中。

    (note#1。使用像ant这样的工具来完成这些任务可能更有用。ant中的任务可以使用ant库从java程序中调用.. 注意#2 - 首选ProcessBuilder 启动新进程。 )

    【讨论】:

    • 我考虑使用ant解决方案,但是,我想尝试在没有第三方库的情况下打包war文件。
    猜你喜欢
    • 2020-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多