Netbeans: главный артефакт проекта обрабатывается через maven-shade-plugin

Я строю свой проект с плагином maven-shade, а Netbeans 8.0 жалуется на следующее предупреждение:

Project main artifact is processed through maven-shade-plugin

When the final artifact jar contains classes not originating in current project, 
NetBeans internal compiler cannot use the sources of the project for compilation. 
Then changes done in project source code only appears in depending projects when 
project is recompiled. Also applies to features like Refactoring which will not 
be able to find usages in depending projects.

Как я могу это исправить? Что он может сломать?

Ответ 1

обычно это проблема в проектах, зависящих от этого.

В то время как файл jar в локальном репо содержит классы из его собственных зависимостей, папка src/main/java не содержит их. Это смущает java-движок, когда он пытается перекомпилировать изменения, сделанные локально в редакторе.

нет возможности "исправить" его. он был помещен туда после того, как к редактору были предъявлены повторяющиеся ошибки, отображающие ошибки компиляции, где их не было. Я думаю, что есть проблема, связанная с тем, что у пользователя появляется предупреждение.

Ответ 2

Я нашел "исправление", следуя инструкциям в Документах Apache Maven

Я добавил следующее к моему pom в разделе плагина тени.

    <configuration>
      <shadedArtifactAttached>true</shadedArtifactAttached>
      <shadedClassifierName>launcher</shadedClassifierName> <!-- Can be any name that makes sense -->
    </configuration>

Теперь у меня есть 2 артефакта, но он работает для моих нужд.