我正在使用maven-shade-plugin
构建我的项目,Netbeans 8.0正在抱怨以下警告:
项目的主要工件通过maven-shade-plugin处理
当最终工件jar包含不是源自当前项目的类时,NetBeans内部编译器无法使用项目源进行编译。然后,在重新编译项目时,项目源代码中所做的更改仅出现在依赖项目中。也适用于重构等功能,无法在依赖项目中找到用法。
我该如何解决这个问题?它会破坏什么?
答案 0 :(得分:16)
我在阴影插件部分将以下内容添加到我的pom中。
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>launcher</shadedClassifierName> <!-- Can be any name that makes sense -->
</configuration>
我现在有2个工件,但它可以满足我的需求。
答案 1 :(得分:6)
通常,这取决于这个项目中的问题。
虽然本地repo中的jar文件包含来自它自己的依赖项的类,但src / main / java文件夹并不包含它们。当java引擎尝试重新编译在编辑器中本地完成的更改时,这会混淆java引擎。
无法修复&#34;它。在针对编辑器提交了反复出现的错误之后,它被放置在那里,显示编译错误,但没有错误。我认为存在一个让用户让警告消失的问题。