Maven安装到结帐和构建

时间:2013-03-15 10:18:30

标签: git maven github github-api

我有一个maven项目依赖于git上的另一个远程项目。我添加了一个

<scm>
    <connection>scm:git:git@github.com:MY-Group/my.project.git</connection>
    <url>https://github.com/MY-Group/my.project</url>
</scm>

进入我目前的项目pom.xml。

当我mvn scm:checkout时,项目被下载到目标/结帐文件夹。

我想要做的是将mvn install覆盖为

  1. 首先将此远程项目签出到目标文件夹
  2. 从目标文件夹
  3. 构建并安装此远程项目
  4. 然后构建当前项目
  5. 这可能吗?如果是这样我们怎么能实现这个目标任何帮助

2 个答案:

答案 0 :(得分:0)

在评论中阐述了khmarbaise的答案,项目间签出和构建依赖关系并不是Maven的意思,但 是一个自动构建系统,Maven存储库可以很好地完成。< / p>

Maven存储库(如ArtifactoryNexus)就像是Maven Central的私有版本。

Jenkins是一个持续集成系统(希望你已经运行它)。您可以将Jenkins配置为轮询SCM服务器以进行更改,并在看到更改时启动构建。 Jenkins将使用Maven构建您的工件并将其部署到您的私有存储库。 Jenkins还可以了解项目间的依赖关系,并在上游项目更改后启动下游构建。

除了这是处理您的Maven项目集合的“正确”方式之外,如果项目规模很大,它还可以节省您的时间。假设您有一些非常大的核心服务器代码,并且您正在编写与服务器通信的接口。在您的原始问题中,您必须检查并编译服务器才能处理您的接口代码,即使您不打算修改服务器。更好的是让Jenkins为您构建服务器。现在,处理服务器项目的人员检查并编辑它,依赖服务器项目的人从私有存储库中获取构建的工件。

答案 1 :(得分:0)

使用apache archiva并解决了问题