为什么从Java启动时我的Windows窗体应用程序不会出现?

时间:2015-03-10 13:14:32

标签: java processbuilder

我正在尝试使用以下代码从Java(eclipse rcp插件)启动Windows窗体应用程序。

// locate resource in plugin
Bundle bundle = Platform.getBundle("com.acme.devicewebservice");
URL url = FileLocator.find(bundle, new Path("dotnet"), null);
url = FileLocator.resolve(url);
File f = new File(url.toURI());
if(f.isDirectory())
{
    // start app
    File prg = new File(f, "MyApp.exe");                
    ProcessBuilder pb = new ProcessBuilder(prg.getAbsolutePath(), "-port", "8081");
    pb.directory(f);
    pb.environment().put("PATH", f.getAbsolutePath());
    process = pb.start();
}

流程开始但应用程序未出现。

如果我开始notepad.exe,则会出现记事本。

    ProcessBuilder pb = new ProcessBuilder("notepad.exe");

如果我使用适用的cmd启动应用程序,但我从未获得应用的Process对象。

    ProcessBuilder pb = new ProcessBuilder("cmd", "/C", "start", prg.getAbsolutePath());

这是Java还是Windows应用程序的问题?我有两个来源。

更新 上面的应用程序是一个eclipse富客户端。我尝试从一个简单的Java应用程序启动该过程,这是有效的。然后我尝试从一个简单的SWT应用程序启动它,这也有效。现在想知道富客户端应用程序有什么不同......

0 个答案:

没有答案