【问题标题】:Execute batch file from Java code从 Java 代码执行批处理文件
【发布时间】:2017-03-07 17:00:08
【问题描述】:

我试图从 java 代码运行批处理文件,bat 文件正在运行,但在 bat 文件内部它正在调用 proxyServer.js 文件。这个 .js 文件没有运行。 下面是示例代码。

try {
    String path="cmd /c start C:\\AxoneES_Viewers_Integration-2016Q3-SNAPSHOT_201609021003\\AxoneViewers.bat";

    Runtime rn=Runtime.getRuntime();
    Process pr=rn.exec(path);

} catch(IOException ex) {
         System.out.println("Exception Found");
}

正如我在内部提到的,它正在调用 .js 文件,他们在其中声明了 .js 文件的路径,下面是声明路径的代码。 cd 查看器\应用程序\maxq\ 节点代理服务器.js

运行bat文件时找不到.js文件的路径,也没有运行。

你能帮我吗?有什么方法可以从 java 执行 bat 文件。

【问题讨论】:

  • 你可以在没有 java 的情况下运行你的批处理文件吗?
  • 所以你想用java,调用一个运行js文件的bat脚本。吉兹。
  • 我只需要使用 java 运行批处理文件。当我在内部运行批处理文件时,它会调用 .js 文件。

标签: java


【解决方案1】:

尝试编辑批处理文件以使用绝对文件名而不是相对文件名。你提到你的批处理文件有这些行

cd viewers\apps\maxq\
node proxyServer.js

将第一行更改为C:\full\path\to\viewers\apps\maxq\ 之类的内容。查看this answer 了解绝对文件名和相对文件名之间的区别。

【讨论】:

  • 我已经更改了批处理文件中的路径并且它正在工作,但是有条件我不应该在批处理文件中更改。我在运行此批处理文件时遇到问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-03
相关资源
最近更新 更多