【发布时间】:2014-02-02 19:32:03
【问题描述】:
当我在我的项目上运行 mvn clean compile 时,我获得了构建成功。
但是当我之后直接运行mvn install 时,由于编译错误,我得到了构建失败。
我得到的错误是:
[错误] 无法在项目自动测试中执行目标 org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile (default-testCompile):编译失败:编译失败:
我的pom.xml中有这个:
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<encoding>UTF-8</encoding>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
和
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
</dependency>
失败是因为它找不到位于另一个模块中的类。这些类的依赖项已添加到我的 pom 文件中,intellij 从不抱怨。
我错过了什么吗?
【问题讨论】:
-
实际的编译错误是什么?
-
返回的错误是:com.xx.xxx.xxxservice 包不存在
-
有趣的是,在 intelliJ 中一切都很好,我从来没有收到任何这些包抱怨,因为我的 pom.xml 中有依赖项,它只会在我尝试运行时抛出这个错误从命令行进行测试。
-
可能的原因是 IntelliJ 可能将所有依赖项组合到一个大类路径中,用于构建所有内容。 Maven 命令行构建具有单独的编译、测试编译和运行类路径。 com.xx.xxx.xxxservice 的 pom 的
<dependency>条目是什么?
标签: java maven intellij-idea