Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins在maven多模块构建作业中只看到我的一个maven模块_Maven_Jenkins - Fatal编程技术网

Jenkins在maven多模块构建作业中只看到我的一个maven模块

Jenkins在maven多模块构建作业中只看到我的一个maven模块,maven,jenkins,Maven,Jenkins,我在maven多模块项目中构建了几个模块。我可以在父目录中的pom.xml头部调用maven并构建所有模块。但是,Jenkins只构建我通过调用mvn-f配置的几个svn repo中的第一个模块,而从不构建其他子模块。我尝试创建一个新的Jenkins项目,但同样的问题也出现了。在maven配置块的高级部分,您是否明确地指向父pom?Jenkins只针对本节中指定的pom执行maven一次 听起来你对jenkins的配置有误,因为通常你只是配置文件名pom.xml,而没有路径。我不认为这是我的错误

我在maven多模块项目中构建了几个模块。我可以在父目录中的pom.xml头部调用maven并构建所有模块。但是,Jenkins只构建我通过调用
mvn-f
配置的几个svn repo中的第一个模块,而从不构建其他子模块。我尝试创建一个新的Jenkins项目,但同样的问题也出现了。

在maven配置块的高级部分,您是否明确地指向父pom?Jenkins只针对本节中指定的pom执行maven一次

听起来你对jenkins的配置有误,因为通常你只是配置文件名
pom.xml
,而没有路径。我不认为这是我的错误。我已尝试删除子模块目录,以便父文件夹仅包含pom.xml。只有这样,Jenkins才会尝试在这个pom.xml上进行构建(但由于找不到相关模块而失败)。在我添加模块的那一刻,它只在找到的第一个模块上进行构建。这是禁用增量生成/并行生成的。请显示pom文件并显示项目的结构。也许你在github项目中有这个,所以更容易研究?您在命令行和Jenkins中使用哪个Maven版本?你用哪种Jenkins verison?花了整个周末,但我终于弄明白了。我会早点给你看POM的,但是他们有很多身份信息,而且我的雇主对隐私很严格。通过将父模块目录作为repo列在作业中,解决了此问题。以前,该模块只是我要下载的一个pom.xml。如果我没有将父模块列为repo之一,詹金斯会认为我的repo下的第一个子模块是父pom。列出父pom的绝对路径有助于干净构建,但不利于mvn增量构建。做我所做的工作是有效的。另外一个澄清是:在回购协议中列出的第一个子pom构建之前,这实际上意味着对于增量构建,它将实现-amd-pl。这是不正确的,因为我会在上进行更新,并且在svn轮询之后它仍然会更新Z。我应该向詹金斯提交Jira报告吗?