我仍然在为将项目中需要的库打包为 OSGi 包而苦苦挣扎。我已经在这里问过了。那里的答案肯定足够好,但是我又遇到了另一个我不理解且无法分解的问题:(
我将库最终打包为 OSGi 包,我已经确定了所有需要的依赖项,所有这些现在都在一个完整的 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,我在编译范围内都有。该捆绑包正在运行...
我将比较这两种情况的清单文件,可能仍然缺少一些依赖项。