如何从.bat
执行classpath
?我只能执行.bat
特定目录D:\temp\kill-chrome.bat
。
ClassPath目录
+ src
+ -> .java files ....
+ resource
+ kill-chrome.bat
我的程序不起作用。
String path = "cmd /c start /resource/kill-chrome.bat";
Runtime rn = Runtime.getRuntime();
try {
Process pr = rn.exec(path);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
答案 0 :(得分:0)
我使用file.getAbsolutePath()
方法的方法最简单。我不确定哪种方式适合。
String realPath = new File("resource/kill-chrome.bat").getAbsolutePath();
String path = "cmd /c start " + realPath;
Runtime rn = Runtime.getRuntime();
try {
Process pr = rn.exec(path);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
在runtime.exec(commend)
,无法直接访问classpath
?
答案 1 :(得分:0)
我认为在类路径中获取文件路径的正确方法是这样的:
URI uri = YourClass.class.getResource("resource/kill-chrome.bat").toURI();
String path = new File(uri).getAbsolutePath();
这个方法将来自你的工作目录(这可能会有所不同):
new File("resource/kill-chrome.bat").getAbsolutePath();