プロジェクトで必要なライブラリを OSGi バンドルとしてパッケージ化するのにまだかなり苦労しています。私はすでにそれについてここで尋ねました。そこにある答えは確かに十分ですが、私には理解できない別の問題があり、それを分解することはできません:(
最終的にライブラリを OSGi バンドルとしてパッケージ化し、必要な依存関係をすべて特定し、すべてを 1 つの完全な jar アーカイブにまとめました。
ライブラリを使用する関数を試すと、次の理由で例外が発生します。
Caused by: java.lang.ClassFormatError: javax/ws/rs/core/UriBuilder
at com.atlassian.jira.rest.client.internal.jersey.JerseyJiraRestClient.<init>(JerseyJiraRestClient.java:61)
at com.atlassian.jira.rest.client.internal.jersey.JerseyJiraRestClientFactory.create(JerseyJiraRestClientFactory.java:34)
at com.atlassian.jira.rest.client.internal.jersey.JerseyJiraRestClientFactory.createWithBasicHttpAuthentication(JerseyJiraRestClientFactory.java:39)
at com.tieto.etb.esb.libs.jiraclient.JiraClient.getClient(JiraClient.java:28)[145:jiraclient.bundle:0.1.0.SNAPSHOT]
at com.tieto.etb.esb.jira.JiraBean.projectInfo(JiraBean.java:38)[142:jira.bundle:0.1.0.SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_35]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_35]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_35]
at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_35]
at org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:341)[70:org.apache.camel.camel-core:2.10.1]
at org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:238)[70:org.apache.camel.camel-core:2.10.1]
at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:166)[70:org.apache.camel.camel-core:2.10.1]
... 52 more
ヒントをお願いしたいのですが、何が問題なのですか。バンドルの構築中に何か問題があると思います。
たとえば、このバンドルには別の pom があり、そこにはすべてコンパイル スコープがあります。このバンドルは機能しています...
両方のケースの MANIFEST ファイルを比較しますが、依存関係が不足している可能性があります。