[jboss-jira] [JBoss JIRA] (DROOLS-57) Split packages: OSGi packaging issue/conflict with Kie API & Kie Internal
Charles Moulliard (JIRA)
jira-events at lists.jboss.org
Wed Feb 27 08:29:57 EST 2013
[ https://issues.jboss.org/browse/DROOLS-57?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12757167#comment-12757167 ]
Charles Moulliard commented on DROOLS-57:
-----------------------------------------
The problem is more general as drools-core (or drools-compiler I think so) should use packages exported by kie-api & kie-internal-api but as the package is the same, that clash (see here for more info : http://wiki.osgi.org/wiki/Split_Packages).
Remark : I have also used split but problem is still there
{code}
<Bundle-SymbolicName>org.kie.internalapi</Bundle-SymbolicName>
<!--<Require-Bundle>org.kie.api;visibility:=reexport;bundle-version="${drools.osgi.version}"</Require-Bundle>-->
<Import-Package>
!org.kie*,
com.sun.tools.xjc;resolution:=optional,
*
</Import-Package>
<Export-Package>
org.kie.*;org.kie.internalapi=split;mandatory:=org.kie.internalapi
</Export-Package>
{code}
{code}
<Bundle-SymbolicName>org.kie.api</Bundle-SymbolicName>
<Import-Package>
!org.kie*,
com.sun.tools.xjc;resolution:=optional,
*
</Import-Package>
<Export-Package>
org.kie.*;org.kie.api=split;mandatory:=org.kie.api
</Export-Package>
{code}
{code}
<Bundle-SymbolicName>org.drools.core</Bundle-SymbolicName>
<!-- Should be removed after refactoring of org.kie api -->
<Require-Bundle>
org.kie.internalapi,
org.kie.api
</Require-Bundle>
<Import-Package>
!org.drools*,
com.sun.tools.xjc*;resolution:=optional,
org.drools.io.impl,
org.osgi.util.tracker,
*
</Import-Package>
<Export-Package>
org.drools.*
</Export-Package>
{code}
karaf at root> start 72
Error executing command: Error starting bundles:
Unable to start bundle 72: Unresolved constraint in bundle org.drools.core [72]: Unable to resolve 72.5: missing requirement [72.5] osgi.wiring.package; (osgi.wiring.package=org.kie)
> Split packages: OSGi packaging issue/conflict with Kie API & Kie Internal
> -------------------------------------------------------------------------
>
> Key: DROOLS-57
> URL: https://issues.jboss.org/browse/DROOLS-57
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Reporter: Charles Moulliard
> Assignee: Mark Proctor
>
> Due to overlap of packages between module kie-api & kie-internal, some classes of kie-internal are not found by kie-api
> example :
> Caused by: java.lang.ClassNotFoundException: org.kie.KieBaseConfiguration not found by org.kie.api [88] = KIE API
> The class org.kie.KieBaseConfiguration should be exported by the bundle kie-internal and imported by kie-api on OSGI platform and this is not the case as both bundles import/export same package org.kie
> {code}
> Bundle 88 = kie api & bundle 89 = kie internal
> karaf at root> packages:exports 88
> ID Packages
> 88 org.kie.event.rule; version=6.0.0.SNAPSHOT
> 88 org.kie.command; version=6.0.0.SNAPSHOT
> 88 org.kie.event.kiebase; version=6.0.0.SNAPSHOT
> 88 org.kie.definition; version=6.0.0.SNAPSHOT
> 88 org.kie.definition.process; version=6.0.0.SNAPSHOT
> 88 org.kie.runtime.rule; version=6.0.0.SNAPSHOT
> 88 org.kie.event.process; version=6.0.0.SNAPSHOT
> 88 org.kie.conf; version=6.0.0.SNAPSHOT
> 88 org.kie.runtime.help; version=6.0.0.SNAPSHOT
> 88 org.kie.runtime.conf; version=6.0.0.SNAPSHOT
> 88 org.kie.management; version=6.0.0.SNAPSHOT
> 88 org.kie.definition.type; version=6.0.0.SNAPSHOT
> 88 org.kie.definition.rule; version=6.0.0.SNAPSHOT
> 88 org.kie.io; version=6.0.0.SNAPSHOT
> 88 org.kie.marshalling; version=6.0.0.SNAPSHOT
> 88 org.kie.builder.model; version=6.0.0.SNAPSHOT
> 88 org.kie.time; version=6.0.0.SNAPSHOT
> 88 org.kie; version=6.0.0.SNAPSHOT
> 88 org.kie.runtime; version=6.0.0.SNAPSHOT
> 88 org.kie.runtime.process; version=6.0.0.SNAPSHOT
> 88 org.kie.logger; version=6.0.0.SNAPSHOT
> 88 org.kie.builder; version=6.0.0.SNAPSHOT
> 88 org.kie.concurrent; version=6.0.0.SNAPSHOT
> 88 org.kie.cdi; version=6.0.0.SNAPSHOT
> 88 org.kie.persistence.jpa; version=6.0.0.SNAPSHOT
> 88 org.kie.osgi.api; version=6.0.0.SNAPSHOT
> 88 org.kie.event; version=6.0.0.SNAPSHOT
> karaf at root> packages:exports 89
> ID Packages
> 89 org.kie.event.rule; version=6.0.0.SNAPSHOT
> 89 org.kie.command; version=6.0.0.SNAPSHOT
> 89 org.kie.internal.utils; version=6.0.0.SNAPSHOT
> 89 org.kie.runtime.helper; version=6.0.0.SNAPSHOT
> 89 org.kie.builder.conf; version=6.0.0.SNAPSHOT
> 89 org.kie.fluent; version=6.0.0.SNAPSHOT
> 89 org.kie.definition; version=6.0.0.SNAPSHOT
> 89 org.kie.conf; version=6.0.0.SNAPSHOT
> 89 org.kie.builder.help; version=6.0.0.SNAPSHOT
> 89 org.kie.io; version=6.0.0.SNAPSHOT
> 89 org.kie.event.io; version=6.0.0.SNAPSHOT
> 89 org.kie.marshalling; version=6.0.0.SNAPSHOT
> 89 org.kie.fluent.test; version=6.0.0.SNAPSHOT
> 89 org.kie.agent.conf; version=6.0.0.SNAPSHOT
> 89 org.kie; version=6.0.0.SNAPSHOT
> 89 org.kie.runtime; version=6.0.0.SNAPSHOT
> 89 org.kie.simulation; version=6.0.0.SNAPSHOT
> 89 org.kie.event.knowledgeagent; version=6.0.0.SNAPSHOT
> 89 org.kie.logger; version=6.0.0.SNAPSHOT
> 89 org.kie.builder; version=6.0.0.SNAPSHOT
> 89 org.kie.concurrent; version=6.0.0.SNAPSHOT
> 89 org.kie.persistence.jpa; version=6.0.0.SNAPSHOT
> 89 org.kie.agent; version=6.0.0.SNAPSHOT
> 89 org.kie.event; version=6.0.0.SNAPSHOT
> 89 org.kie.task.service; version=6.0.0.SNAPSHOT
> karaf at root> packages:imports 89
> System Bundle (0): javax.xml.bind; version=2.2.1
> OPS4J Pax Logging - API (4): org.slf4j; version=1.7.1
> OPS4J Pax Logging - API (4): org.slf4j; version=1.6.6
> OPS4J Pax Logging - API (4): org.slf4j; version=1.5.11
> OPS4J Pax Logging - API (4): org.slf4j; version=1.4.3
> Apache ServiceMix :: Bundles :: xstream (57): com.thoughtworks.xstream; version=1.4.3
> KIE API (88): org.kie.event.rule; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.command; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.event.kiebase; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.definition; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.definition.process; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.runtime.rule; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.event.process; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.conf; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.runtime.help; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.runtime.conf; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.management; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.definition.type; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.definition.rule; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.io; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.marshalling; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.builder.model; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.time; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.runtime; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.runtime.process; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.logger; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.builder; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.concurrent; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.cdi; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.persistence.jpa; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.osgi.api; version=6.0.0.SNAPSHOT
> KIE API (88): org.kie.event; version=6.0.0.SNAPSHOT
> camel-core (229): org.apache.camel.spi; version=2.10.3
> camel-core (229): org.apache.camel; version=2.10.3
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list