【问题标题】:How can I automatically build multiple Eclipse Plug-In Projects as one Jenkins project?如何自动将多个 Eclipse 插件项目构建为一个 Jenkins 项目?
【发布时间】:2011-08-25 08:21:36
【问题描述】:

我们使用 Jenkins 作为我们的构建服务器。我们有一个由 Eclipse 插件、一个核心项目和几个其他插件构建的项目。在 Jenkins 上构建 Core 并在其上使用 Sonar 是相对的。

现在我们要创建一个 Jenkins 构建,其中整个项目由 Sonar 自动构建和测试。互联网研究表明将包装更改为“pom”,这是无法做到的,因为 Tycho 插件需要将包装设置为“eclipse-plugin”。

我们做错了什么,您如何在 Jenkins 中设置这样的项目?

如果需要任何其他信息,请告知。

【问题讨论】:

    标签: plugins eclipse jenkins maven


    【解决方案1】:

    您应该创建一个带有pom 打包的“伞形”Maven 项目,并使您的所有其他项目模块都使用此聚合器。然而,此外,整个项目组需要作为一个实体从您的 SCM 工具中访问。如果您使用的是 Subversion,这很容易通过svn:externals 实现,我怀疑您必须使用其他工具来更改您的配置。我建议您也检查一下是否有任何Jenkins plugins 可能会有所帮助。

    【讨论】:

      【解决方案2】:

      对于 git,您可以使用 submodules 功能来实现与使用 svn:externals 相同的功能。参见例如 mylyn,它可能接近您想要实现的目标:

      git clone git://git.eclipse.org/gitroot/mylyn/org.eclipse.mylyn.git
      

      【讨论】:

        【解决方案3】:

        鉴于此示例目录布局:

        +ParentDir
         -pom.xml
           +ProjectA
            -pom.xml
           +ProjectB
            +SubDirB
             -pom.xml
        

        ParentDir 中 pom.xml 的内容应包括以下内容:

        <packaging>pom</packaging>
        <modules>
           <module>ProjectA/pom.xml</module>
           <module>ProjectB/SubDirB/pom.xml</module>
        </modules>
        

        当你在这个顶级 POM 上调用 Maven 时,它会将 ProjectA 和 ProjectB 添加到要构建的反应器列表中。

        这可以适应类似的项目,&lt;module&gt;标签接受相对路径,例如../../SomeProject/pom.xml

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-01-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-03-30
          相关资源
          最近更新 更多