0

.我使用 Eclipse 创建了一个可运行的 Jar。IEDriverServer.exe 存在于 Jar 中。我将 IEDriverServer.exe 视为项目的资源。

下面的代码行

System.setProperty("webdriver.ie.driver", "C:/Folder1/RunnableJar.jar/IEDriverServer.exe");

抛出Driver executable doesn't exist in the following path

我已将 IEDriverServer.exe 放在项目的 bin 文件夹中。我正在使用下面的代码行来获取 bin 文件夹中存在的 IEDriver 的路径。

MainClassName.class.getProtectionDomain().getCodeSource()
                .getLocation().getPath() + "/IEDriverServer.exe";

如果我从 Eclipse 运行代码,则路径是 bin 文件夹中存在的 IEDriverServer 的路径。如果我将项目导出为可运行的 Jar,则路径如下所示

C:/Folder1/RunnableJar.jar/IEDriverServer.exe

如果我从 Eclipse 运行它,它工作正常。

如果我将它作为 jar 运行,它会引发异常。

我想知道从 Runnable jar 中设置 IEDriverServer.exe 属性的方法。

4

2 回答 2

2

您不能直接从 jar 运行 exe 文件。您只能编写一种方法,将您的 exe 提取到一个临时文件夹,然后将您的System.setProperty设置为该路径值。

你可以在那里找到一些代码示例

于 2013-08-12T07:05:40.987 回答
0

似乎没有办法直接从 Windows 平台上的 Jar 运行 exe。

如其中一个答案所述,最好的方法是将 exe 从 jar 提取到临时目录并将属性路径设置为该目录。

以下链接可能会帮助其他人解决同样的问题。

链接1

链接2

链接3

于 2013-08-14T08:44:27.073 回答