我无法解释为什么Maven编译失败,Maven安装在同一个项目上成功。上下文:运行Eclipseandm2e,所有内容都在工作区中编译。运行配置> Maven编译失败(符号未找到),但Maven安装成功。因此,我的理解是Maven安装会调用Maven编译。Maven编译失败:未找到的符号位于.java测试类的祖先类中。有趣的是,在类上运行as > JUnit测试会显示同一个祖先类上的编译失败ClassNotFound。你能帮忙吗,-查克
发布于 2012-12-17 20:53:45
在eclipse中,所有java文件都从源文件夹编译为target/classes (可以更改)。Eclipse使用编译所有类-从pom到所有作用域(编译、测试、提供等)以及其他项目(检查您的项目是否依赖于工作区中其他打开的项目)。当您运行maven install - maven时,检查是否编译了所有类并创建了jar包。它不知道这些类是如何编译的?由美文还是日食?
如果您按maven编译(install )编译- maven只使用范围编译/提供的库。它不使用任何其他依赖项。
你可以做个测试。添加到您的pom:
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8</version>
<scope>test</scope>
</dependency>现在,在src/main/java @Test注释的类中使用。在eclipse项目中将编译。但是,当您运行mvn clean install时,将显示编译错误(没有此类测试)。
https://stackoverflow.com/questions/13921248
复制相似问题