运行 program.exe 来自 eclipse 插件项目
Run program.exe from eclipse plugin project
我正在写一个 eclipse-plugin 运行 program.exe。我已将 program.exe 添加到插件 jar 文件中。如何执行这个程序?
public class Handler extends AbstractHandler {
public Object execute(ExecutionEvent event) throws ExecutionException {
Runtime.getRuntime().exec(/*What should I write here*/);
return null;
}
}
您应该像在 cmd 中一样执行程序,但现在指定程序位置的整个路径。
Runtime.getRuntime().exec("C:\your\path\program.exe");
在 Runtime class 的 Oracle 文档中,您可以在 exec()
中看到可接受的输入。
您不能从插件 jar 中 运行 program.exe,因此需要提取它。在你的插件中使用:
Bundle bundle = Platform.getBundle("plugin id");
URL url = FileLocator.find(bundle, new Path("relative path to program"), null);
url = FileLocator.toFileURL(url);
这将在插件 jar 中找到程序并将其解压缩到一个临时位置(由 FileLocator.toFileURL
完成)。
我正在写一个 eclipse-plugin 运行 program.exe。我已将 program.exe 添加到插件 jar 文件中。如何执行这个程序?
public class Handler extends AbstractHandler {
public Object execute(ExecutionEvent event) throws ExecutionException {
Runtime.getRuntime().exec(/*What should I write here*/);
return null;
}
}
您应该像在 cmd 中一样执行程序,但现在指定程序位置的整个路径。
Runtime.getRuntime().exec("C:\your\path\program.exe");
在 Runtime class 的 Oracle 文档中,您可以在 exec()
中看到可接受的输入。
您不能从插件 jar 中 运行 program.exe,因此需要提取它。在你的插件中使用:
Bundle bundle = Platform.getBundle("plugin id");
URL url = FileLocator.find(bundle, new Path("relative path to program"), null);
url = FileLocator.toFileURL(url);
这将在插件 jar 中找到程序并将其解压缩到一个临时位置(由 FileLocator.toFileURL
完成)。