0
在我开发的eclipse插件中,我需要从插件中执行exe文件。 对于这一点,我使用的Java代码:从eclipse插件运行exe文件
p = Runtime.getRuntime().exec(command);
哪里p
是过程。这工作正常。
但是,当部署插件(已经在我的开发环境中使用“运行eclipse应用程序”时),插件正在eclipse所在的文件夹中查找exe文件(靠近eclipse.exe文件)。我不想把我的exe放在那里。
我希望eclipse将它放入插件jar(或者其他可以找到这样的资源文件的文件夹中),并且exec
命令会在那里找到它。小增加:为了运行,我的exe文件需要一个dll,我把它放在与exe相同的目录中。所以当它从插件运行时,exe需要能够找到这个dll。
我该怎么做?
非常感谢汤姆。两个后续问题:(1)我怎么知道什么是“my.bundle.id”? (2)我的功能是由几个插件项目组成的。我可以将其中一些作为罐子和其他作为文件夹进行部署吗?如果我把exe和dll放在一个单独的插件项目中,并且只部署这个插件作为文件夹,也许最好? – user990371 2012-02-13 15:12:59
1:看看你的'META-INF/MANIFEST.MF',捆绑ID是'Bundle-SymbolicName'。 – 2012-02-13 15:15:51
2:是的。要将bundle部署为文件夹,必须在bundle-class路径中添加jar文件,例如'Bundle-ClassPath:myplugin.jar'和你的'build.properites'应该看起来像这样:012. bin.includes = META-INF/,\ myplugin.jar,\ about.html,\ OSGI-INF/ source.myplugin.jar = SRC/ src.includes = about.html ' – 2012-02-13 15:23:11