我正在开发一个通过CICS explorer连接到cics区域的简单Java-DB2插入程序。我为外部jar创建了一个插件(com.ibm.db2.jcc),将插件导出为可部署的插件,并将其添加到程序的构建路径中。该程序包的依赖项(import-package)中也添加了该程序包。但是在cics区域中安装捆绑包,我得到了一个例外。
The bundle ABC could not be resolved. Reason:Missing constraint:Import-package:com.ibm.db2.jcc;version="0.0.0".
有人可以帮助我追踪问题吗?
答案 0 :(得分:0)
我假设你正在编写的程序是在一个OSGi包中,它使用CICS的OSGi CICS包部件作为OSGi环境部署到CICS JVM服务器中。听起来你正在使用现有的二进制依赖关系并将其作为OSGi包重新绑定,并希望让你的程序使用OSGi来解决它。
基于这些假设,听起来你必须自动将捆绑包添加到构建路径中,我认为你不应该这样做。一旦设置了目标平台(http://pic.dhe.ibm.com/infocenter/cicsts/v5r1/index.jsp?topic=%2Fcom.ibm.cics.ts.java.doc%2Ftopics%2Fdeveloping_sdk.html),就可以从工作区中的OSGi包或目标平台解决任何依赖关系。然后,应该只为每个捆绑包添加OSGi捆绑包部件,并将CICS捆绑包导出到您的区域。 Explorer应该负责将所有相关的依赖项导出到CICS。
如果您愿意,可以将DB2 jar文件添加为lib而不作为OSGi包重新绑定,方法是将库添加到Bundle-Classpath清单声明中,但您可能已经考虑过了这一点!