【问题标题】:Strange maven compilation error while building project构建项目时出现奇怪的 Maven 编译错误
【发布时间】:2019-07-12 16:36:59
【问题描述】:

构建项目时出现奇怪的 maven 编译错误。

嗨, 关于 Maven 项目构建,我面临一个微不足道但非常奇怪的问题。 我使用 Intellij 作为 IDE。

我有一个 maven 项目 A,它有两个 maven 模块 B 和 C

A
|
|
|--B
|
|--C

模块C是一个测试模块,它依赖于模块B。

现在,当我使用 mvn clean install 构建整个项目时,它抱怨“无法执行目标 org.apache.maven.plugins:maven-compiler-plugin 错误:找不到符号

但是,intellij 上没有显示编译错误。

此外,令我惊讶的是,我的测试运行没有任何问题。

我尝试执行不同的 intellij 选项,即。 (重新导入/同步/无效缓存并重新启动),但徒劳无功。

我也尝试过使用 maven-compiler-plugin 的版本。

有人可以帮我解决失败的原因吗?谢谢。

【问题讨论】:

  • 是的,我查过了。它不会抱怨 intellij ide。
  • 这是一个导入行,它在模块B中。
  • 如果 intellij 可以找到库,而 maven 找不到,那么您的 pom.xml 文件没有正确的依赖关系。什么是库,什么是失败的导入,它在你的 pom.xml 中导入到哪里?
  • 您是否将 Java 文件添加到 resources 而不是 java 文件夹中?或者,也许您在 IDE 项目设置中手动添加了库/模块? Maven不会错,所以问题出在IDE某处。

标签: java maven intellij-idea


【解决方案1】:

问题是由于 spring boot maven 插件的重新打包目标而发生的。

重新打包目标用重新打包的jar替换原来的jar。

编译问题的原因是应用程序类被打包在 BOOT-INF/classes 中,这就是依赖模块无法加载重新打包的 jar 类的原因。

更多信息在这里:

https://docs.spring.io/spring-boot/docs/current/maven-plugin/examples/repackage-classifier.html

【讨论】:

    猜你喜欢
    • 2018-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多