“没有这样的文件:”jenkins在与Maven构建集成时出错

时间:2016-07-11 12:04:02

标签: eclipse maven selenium selenium-webdriver jenkins

我最近开始使用Jenkins作为我的Maven Selenium自动化项目的CI工具。

我的本​​地eclipse工作区的路径是:

/media/user/Data/Automation_Scripts

并且用于执行项目的pom.xml文件的完整路径是:

/media/user/Data/Automation_Scripts/[project_name]/pom.xml

现在,我已经安装了Jenkins并为其添加了一个Maven项目。当我尝试在“Build”下的“Root POM”文本字段中输入项目的pom.xml文件时,我得到以下错误:

No such file: ‘/media/user/Data/Automation_Scripts/test/pom.xml’

error_message_section

然而,如果我导航到同一路径,则存在pom.xml文件。当我在Jenkins中构建Maven项目时,会显示以下错误:

Started by user Test Building in workspace
/var/lib/jenkins/jobs/TEST/workspace Parsing POMs ERROR: No such file
/media/user/Data/Automation_Scripts/test/pom.xml Perhaps you need to
specify the correct POM file path in the project configuration?
Finished: FAILURE

更新:

我在jenkins工作区中创建了一个pom.xml文件,该文件位于:

/var/lib/jenkins/jobs/TEST/workspace

在这个pom文件中,通过以下方式给出了我的实际pom.xml(位于另一个文件夹中)的路径:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
<name>Maven Default Project</name>
<artifactId>jenkins_test</artifactId>  

<parent>
<groupId>ca.test</groupId>
  <artifactId>maven_test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <relativePath>/media/user/Data/Automation_Scripts/test/pom.xml</relativePath>
 </parent>
</project>


我现在仍然收到以下错误:

Building in workspace /var/lib/jenkins/jobs/TEST/workspace
Parsing POMs
ERROR: Failed to parse POMs
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM: Could not find artifact ca.test:maven_test:pom:0.0.1-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 9

at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:364)
at hudson.maven.MavenEmbedder.buildProjects(MavenEmbedder.java:361)
at hudson.maven.MavenEmbedder.readProjects(MavenEmbedder.java:331)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1301)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1098)
at hudson.FilePath.act(FilePath.java:1018)
at hudson.FilePath.act(FilePath.java:996)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.parsePoms(MavenModuleSetBuild.java:960)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:679)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
at hudson.model.Run.execute(Run.java:1720)
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:404)
Finished: FAILURE

我猜相对路径有问题。你能告诉我这里缺少什么吗?

1 个答案:

答案 0 :(得分:0)

尝试提供相对路径而不是实际的绝对路径。 默认情况下,jenkins job将path视为工作空间路径。 在作业的工作空间中提供pom.xml,并将路径提供为文件名I.e pom.xml