2013-12-19 5 views
0

Hibernate는 Antlr (3.5.2 작품, 분명히)을 사용하며, 나는 Hibernate (그러므로 OSGi 환경에서 Antlr)를 사용하고있다. antlr-complete-3.5.2-SNAPSHOT.jar를 OSGi 번들로 포장했지만 모든 패키지를 번들로 내보냈습니다. 질문은 간단합니다. 이 번들에서 개인 Java 패키지와 공개 Antlr API의 일부인 Java 패키지를 알아야합니다.랩핑 Antlr 3.5.2 for OSGi

antlr.*; 
org.antlr.*, 
org.stringtemplate.v4.* 

이 아마 너무 많은 수출 : 지금, 나는 아래 모든 을 수출하고 있습니다. 어떤 도움을 주셔서 감사합니다.

답변

0

일반적으로 비 OSGi JAR을 OSG화할 때 모든 패키지를 내보내는 것이 최선의 방법입니다.

Hibernate를 깨지 않고 ANTLR 익스포트를 제한 할 수 있다고 가정하면 익스포트하지 않은 패키지 중 하나를 사용하는 다른 ANTLR 클라이언트가 손상 될 수 있습니다.

바닐라 자바는 단순히 개인 패키지의 개념을 지원하지 않습니다.