如何在不同目录中运行bat文件
Posted
技术标签:
【中文标题】如何在不同目录中运行bat文件【英文标题】:How to run bat file in different directory 【发布时间】:2021-08-26 11:07:58 【问题描述】:我有一个 bat 文件,它运行一个名为 Systemm.java
的 java 程序,位于一个名为 tp3
的包中
我的文件组织如下
.
├── src
├── tp3
│ ├── Systemm.java
│ ├── Communication.java
│ └── exec_server.bat
└── teste.bat
所以,我的主要问题是,我使用 teste.bat 来运行我的类 Systemm.java。而且这只蝙蝠很好用。
我还想做的是在 java 中调用 exec_server.bat。
依次:
teste.bat 运行 Systemm.java Systemm.java 有一个 Communication.java 类的实例 此实例运行应运行 exec_server.bat 的方法Communication executeServer() method
public void executeServer()
try
// Path
Process p = Runtime.getRuntime().exec("cmd /c start \"\" tp3\exec_server.bat");
p.waitFor();
System.out.println("I finished running your server");
catch (IOException | InterruptedException e) e.printStackTrace();
但是,当我运行我的程序时,此方法会在 cmd 上显示此消息
我几乎是探索 cmd 和 bat 文件的新手,所以我真的很困惑我做错了什么。
非常感谢您提前提供的任何帮助!
P.S:我在 src 目录上调用 cmd,exec_server.bat
只回显消息“您好!”在cmd上
【问题讨论】:
【参考方案1】:请提供完整路径尝试:
Process p = null;
try
p = Runtime.getRuntime().exec("cmd /c start D:\\practice\\P1\\samp.bat ");
catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace();
【讨论】:
以上是关于如何在不同目录中运行bat文件的主要内容,如果未能解决你的问题,请参考以下文章