【发布时间】:2020-07-29 13:29:45
【问题描述】:
我已经在 Windows 10 上安装了 Jenkins,每次我尝试执行 maven 项目或只是尝试执行 mvn clean test(命令行)时,Jenkins 决定我的新工作区应该是:C:\Windows\system32\config\systemprofile\eclipse-workspace\,而我的项目在C:\Users\username\eclipse-workspace。
Jenkins 从目录C:\Windows\system32\config\systemprofile\AppData\Local\Jenkins.jenkins\workspace\projectName 开始,即使我运行cd 命令我也会遇到这个问题:
驱动程序可执行文件必须存在: C:\Windows\system32\config\systemprofile\eclipse-workspace\projectname\drivers\chromedriver\chromedriver.exe
我的 chrome 驱动程序显然不在那里,但它在 C:\Users\userName\eclipse-workspace\projectName\drivers\chromedriver 中。
看起来 Jenkins 更改了我的 user.home。
我去配置文件并设置:
<workspaceDir>C:\Users\userName\eclipse-workspace</workspaceDir>
但它仍在C:\Windows\system32\config\systemprofile\eclipse-workspace\projectname\drivers\chromedriver\chromedriver.exe中寻找驱动程序
这部分:C:\Windows\system32\config\systemprofile\是在Java中使用System.getProperty("user.home")获得的。用 Jenkins 运行它似乎可以修改它。
它为什么要在那里找我的司机? 为什么它不能只粘在我的工作区文件夹中? 我该如何解决这个问题?
谢谢
【问题讨论】:
-
更新:尝试在 Java 中设置不带变量的路径,它仍在 C:\Windows\system32\config\systemprofile\eclipse-workspace\projectname\drivers\chromedriver\chromedriver 中寻找驱动程序.exe
-
update2:我尝试在 Jenkins 中更改 Path 变量,但没有成功。我还在 Jenkins 环境变量中添加了 user.home 并更改了 USERPROFILE 变量。到目前为止没有任何效果。
-
在 Windows 上运行 Jenkins 是个坏主意!对不起,不得不说。看来您必须对本地系统
$PATH和Environment Variables进行一些更改。您是否尝试过直接在要构建的路径中编写Hello world,即 C:\Windows\system32\config\systemprofile\eclipse-workspace\ 。如果它在自己喜欢的工作区中工作,那么更改到该点可能是一个更容易的选择。请参考:stackoverflow.com/questions/34854377/… -
谢谢 mdabdullah,Windows 上的 Jenkins 不是我的选择,我在一个公司环境中,所以我想我必须使用我所得到的......老实说我不想改变我的工作区目录只是因为 Jenkins
-
试图编辑
config.xml。它开始了新的安装,但它仍然适用于C:\Windows\system32\config\systemprofile\eclipse-workspace\projectname\drivers\chromedriver\chromedriver.exe。我编辑了我的 Java 类,所以我不使用user.home变量,仍然没有工作System.setProperty("webdriver.chrome.driver", "C:\\Users\\user\\eclipse-workspace\\project\\drivers\\chromedriver\\chromedriver.exe");
标签: eclipse maven jenkins testng workspace