osgi 구성 요소를 만들고 싶습니다. maven-bundle-plugin
을 사용하라고 들었습니다. 내 pom.xml
이 점을 추가하는 것에 의해 시작 : <_include>
태그에 전달되어maven-bundle-plugin을 사용하면서 .bnd 파일을 만드는 방법은 무엇입니까?
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>3.0.0</version>
<extensions>true</extensions>
<configuration>
<obrRepository>NONE</obrRepository>
<instructions>
<_include>-bnd.bnd</_include>
</instructions>
</configuration>
</plugin>
을 주목 .bnd
파일을. 나는 사람들이이 파일들을 최소한으로 유지해야한다는 말을 들었거나 심지어는 비어 있어야한다. 그런 다음 어떤 수입품/수출품이 필요한지 관찰해야한다. 이것은 혼란 스럽다. 내 MANIFEST.MF
파일을 가져오고 내보낼 항목을 알고 있습니다. 그러나 내 .bnd
파일을 작동 시키려면 약간의 도움이 필요합니다. 지금은 비어있는 파일 인 .bnd
을 사용하려고 노력하고 있으며 제대로 작동하는지 확신 할 수 없습니다.
누구나이 플러그인에 대한 경험이 있고 그것을 어떻게 만들고 싶습니까?
예를 들어, here은 .bnd
샘플입니다. 그러나 나는 그가 이것이 수입/수출이 있어야한다고 어떻게 결정했는지 모른다. 나는 .jar
을 테스트 할 때
는 지금, 나는 참으로 .jar
에서 MANIFEST.MF
이 있다는 사실에도 불구하고
no main manifest attribute, in bundle-1.0.0.jar
오류가 발생합니다.
업데이트 : 이전에 가지고 있던 MANIFEST.MF
을 공유 할 수 있다고 생각했는데, 지금이 플러그인을 통해 생성하고 싶습니다.
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Just a Name
Bundle-SymbolicName: just.a.name.broker;singleton:=true
Bundle-Version: 1.0.0
Require-Bundle: org.apache.activemq,
just.msg
Bundle-Activator: just.a.broker.Activator
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.naming,
javax.xml,
javax.xml.parsers,
org.apache.log4j.xml,
org.osgi.framework
Bundle-ClassPath: .
Export-Package: just.a.broker
그래서 이러한 매니페스트를하기 위해 어떻게 내 .bnd
파일은 같이해야합니까? 또는 .bnd
파일을 전달하는 대신 플러그인에 속성을 포함시키는 것이 더 좋습니까?
감사합니다. 그것은 확실히했다! –