Ответ 1
Это не глюк в m2e, как указано в принятом ответе. Проблема в том, что maven не знает, что такое тип "bundle". Поэтому вам нужно добавить плагин, который его определяет, а именно: maven-bundle-plugin. Обратите внимание, что вам также необходимо установить для свойства extensions значение true. Таким образом, POM должен иметь что-то вроде
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.4.0</version>
<extensions>true</extensions>
</plugin>
Проблема с принятым ответом заключается в том, что он работает, если зависимость набора типов является прямой зависимостью; поскольку это ваш pom, который объявляет об этом, вы можете просто удалить этот тип. Однако, если ваша зависимость сама по себе имеет зависимость от набора типов, тогда вы ввернуты, потому что тогда одна из ваших транзитивных зависимостей относится к набору типов, и вы не можете просто удалить этот тип, поскольку вы не являетесь владельцем этого артефакта и не имеете доступ к помпе, что опять не соответствует вашему текущему исполнению. он попытается найти repo/your-dependency.bundle
Я столкнулся с этой проблемой при использовании плагина зависимостей для копий-зависимостей. В этом случае зависимость плагина должна идти в самом плагине. Вам просто нужен плагин зависимости, чтобы узнать о плагине пакета:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.4.0</version>
<type>maven-plugin</type>
</dependency>
</dependencies>
<extensions>true</extensions>
</plugin>