2016-03-02 53 views
0

当代码签入时,我们正在努力使用Jenkins将AEM站点部署到我们的开发服务器。基础架构使用Jenkins以及Maven,JDK和SVN进行配置,建立。使用Maven,SVN和Jenkins部署Adobe Experience Manager问题

我们有一个多模块项目。文件结构如下:

/ProjectFolder/ 
--------------/ProjectName/ 
--------------/ProjectName/pom.xml 
--------------/ProjectName.core/ 
--------------/ProjectName.core/pom.xml 
--------------/ProjectName.it.launcher/ 
--------------/ProjectName.it.launcher/pom.xml 
--------------/ProjectName.it.tests/ 
--------------/ProjectName.it.tests/pom.xml 
--------------/ProjectName.ui.apps/ 
--------------/ProjectName.ui.apps/pom.xml 
--------------/ProjectName.ui.content/ 
--------------/ProjectName.ui.content/pom.xml 

的/ProjectName/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/maven-v4_0_0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>com.ProjectName</groupId> 
<artifactId>ProjectName</artifactId> 
<packaging>pom</packaging> 
<version>0.0.1-SNAPSHOT</version> 
<description>ProjectName</description> 

<modules> 
    <module>core</module> 
    <module>ui.apps</module> 
    <module>ui.content</module> 
    <module>it.tests</module> 
    <module>it.launcher</module> 
</modules> 

随着詹金斯作业设置为从SVN拉和使用Maven发布,它找到了根POM(ProjectName/pom.xml),但使用模块POM文件失败。生成以下输出:

ERROR: Failed to parse POMs 
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs: 
[ERROR] Child module C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\core of C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\pom.xml does not exist @ 
[ERROR] Child module C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\ui.apps of C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\pom.xml does not exist @ 
[ERROR] Child module C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\ui.content of C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\pom.xml does not exist @ 
[ERROR] Child module C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\it.tests of C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\pom.xml does not exist @ 
[ERROR] Child module C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\it.launcher of C:\Users\JenkinsSA\.jenkins\jobs\Web_PublishDevelopment\workspace\ProjectName\pom.xml does not exist @ 

任何人都可以提供一些有关此问题的一些见解?

+1

您可以检查是否所有的moudles存在于 - C:\用户\ JenkinsSA \ .jenkins \工作\ Web_PublishDevelopment \工作区\项目名\ – awd

+0

的结构几乎是相同的。而不是C:\ Users \ JenkinsSA \ .jenkins \ jobs \ Web_PublishDevelopment \ workspace \ ProjectName \,它是C:\ Users \ JenkinsSA \ .jenkins \ jobs \ Web_PublishDevelopment \ workspace \ ProjectName.core ...如果这是有道理的(这种评论很难使它看起来如何我需要 – Wes

回答

1

变化以下各项

<modules> 
    <module>../ProjectName.core</module> 
    <module>../ProjectName.ui.apps</module> 
    <module>../ProjectName.ui.content</module> 
    <module>../ProjectName.it.tests</module> 
    <module>../ProjectName.it.launcher</module> 
</modules> 

在你的父POM模块的另一个解决办法是保持聚甲醛,因为它是和移动父文件夹内的文件夹模块。 i.e.-

/ProjectFolder/ 
--------/ProjectName/ 
--------------/core 
--------------/it.launcher 
--------------/it.tests 
--------------/ui.apps 
--------------/ui.content 
+0

我最终复制了POM文件从/ projectfolder/projectname /到/ projectfolder /然后添加了projectname到模块列表中,我必须要有与我们的网络团队进行讨论,讨论我们如何保持未来的正确结构。 – Wes