Maven聚合构建的安装有效,但编译失败

时间:2013-06-24 12:38:03

标签: maven

我有3个maven项目,所有这些项目mvn compile / mvn install都成功地来自各自的目录。

聚合POM看起来像:

<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.me.myproject</groupId>
    <artifactId>my_project</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <modules>
        <module>Module1</module>
        <module>Module2</module>
        <module>Module3</module>
    </modules>

</project>

当我从父目录运行mvn compile时,Module2无法构建,说它无法找到Module1个类。但是mvn compile目录下的Module2工作得很好!

为什么父项目不会编译?

更新这很奇怪:父级mvn install成功,但mvn compile不是!!

1 个答案:

答案 0 :(得分:3)

您需要使用mvn installmvn compile不起作用是正常的。 Module2尝试从本地存储库加载所需的类。如果你没有install,那么这些类不在你的本地存储库中,然后Module2找不到Module1类。