버전을 2.3.5
에서 2.4.0
으로 mvn clean install
으로 실행하면 몇 가지 경고 메시지가 출력됩니다. 예 :Maven Bundle Plugin : 내보내기가 비공개 참조
Export ch.entwine.weblounge.contentrepository.impl.index, has 1, private references [org.elasticsearch.action.bulk]
나는이 내장 된 LIB (elasticsearch) 함께 할 수있는 뭔가가 같아요. 다음은 POM의 일부입니다.
<dependencies>
...
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>0.19.9</version>
</dependency>
...
</dependencies
...
<Export-Package>
...
ch.entwine.weblounge.contentrepository.impl.index
...
</Export-Package>
<Embed-Dependency>
....
elasticsearch;inline=true
...
</Embed-Dependency>
오류 메시지의 의미는 무엇입니까? 이러한 문제를 해결하기위한 권장 방법은 무엇입니까?
답변 해 주셔서 감사합니다. 하지만 필자는 항상 임베디드 종속성의 패키지를 내 보내서는 안된다고 생각하고있었습니다 (번들 API의 일부가 아님). 내가 틀렸어? – Basil
음, 그게 달렸어 ... 항아리를 포함하는 경우 그것은 번들로 존재하지 않으므로 항아리를 "제공됨"으로 설정할 수 없습니다. 따라서 공개 메소드에 필요한 클래스가 포함 된 모든 패키지를 내보내는 것이 가장 좋습니다. 이 메시지는 일반적으로 향후 클래스로드 문제를 나타냅니다. – Cristiano