我是 Maven 新手,我正在开发一个项目,该项目对我的其他项目有一个或多个依赖项。
示例:我有 3 个 Maven 项目。
- 我的项目
- 我的项目其他
- MyProjectCommon
MyProject 和 MyProjectOther 都是相互独立的,彼此之间没有太大的关系,但它们都依赖于 MyProjectCommon。(MyProjectOther 与这个问题无关紧要,只是包含它以表明 MyProjectCommon 用于其他项目)
在本地我可以完成这项工作,我有一个工作区,我有两个包。我知道这是因为 Maven 将 MyProjectCommon 存储在本地存储库中。
两个项目(MyProject 和 MyProjectCommon)都有自己的 GitHub 存储库,并且我的 AWS CodeBuild 被指示构建 MyProject 存储库。这失败了,因为 AWS CodeBuild 不存在 MyProjectCommon。
- 我怎样才能让这个构建与 AWS CodeBuild 一起使用,让 CodeBuild 在构建 MyProject 之前下载并构建 MyProjectCommon?
我的项目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">
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<modelVersion>4.0.0</modelVersion>
<groupId>com.myproject</groupId>
<artifactId>myproject</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<name>myproject</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>com.myproject</groupId>
<artifactId>myproject.common</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>
MyProjectCommonpom.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">
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<modelVersion>4.0.0</modelVersion>
<groupId>com.myproject</groupId>
<artifactId>myproject.common</artifactId>
<packaging>jar</packaging>
<version>1.0</version>
<name>myproject.common</name>
<url>http://maven.apache.org</url>
</project>