[ 
https://issues.apache.org/jira/browse/LOG4J2-346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13748346#comment-13748346
 ] 

Roland Weiglhofer commented on LOG4J2-346:
------------------------------------------

Index: slf4j-impl/pom.xml
===================================================================
--- slf4j-impl/pom.xml  (revision 1516372)
+++ slf4j-impl/pom.xml  (working copy)
@@ -24,7 +24,7 @@
     <relativePath>../</relativePath>
   </parent>
   <artifactId>log4j-slf4j-impl</artifactId>
-  <packaging>jar</packaging>
+  <packaging>bundle</packaging>
   <name>Apache Log4j SLF4J Binding</name>
   <description>SLF4J API binding to Log4j 2 Core</description>
   <properties>
@@ -66,6 +66,22 @@
   <build>
     <plugins>
       <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
+        <inherited>true</inherited>
+        <configuration>
+          <instructions>
+            <Bundle-SymbolicName>${osgi.symbolicName}</Bundle-SymbolicName>
+            <Export-Package>${osgi.export.slf4jbinding}</Export-Package>
+            <Private-Package>${osgi.private}</Private-Package>
+            <Import-Package>${osgi.import}</Import-Package>
+            
<DynamicImport-Package>${osgi.dynamicImport}</DynamicImport-Package>
+            <Bundle-DocURL>${project.url}</Bundle-DocURL>
+          </instructions>
+        </configuration>
+      </plugin>
+      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
         <configuration>
Index: pom.xml
===================================================================
--- pom.xml     (revision 1516096)
+++ pom.xml     (working copy)
@@ -142,6 +142,8 @@
     <!-- Configuration properties for the OSGi maven-bundle-plugin -->
     
<osgi.symbolicName>org.apache.logging.${project.artifactId}</osgi.symbolicName>
     
<osgi.export>org.apache.logging.log4j.*;version=${project.version};-noimport:=true</osgi.export>
+    
<osgi.export.slf4jbinding>org.slf4j.impl;version=1.7.5,org.slf4j.helpers;version=1.7.5,org.apache.logging.slf4j;version=${project.version}</osgi.export.slf4jbinding>
+    
<osgi.export.log4j1.2>org.apache.log4j;version=1.2,org.apache.log4j.helpers;version=1.2,org.apache.log4j.config;version=1.2,org.apache.log4j.spi;version=1.2,org.apache.log4j.xml;version=1.2</osgi.export.log4j1.2>
     <osgi.import>*</osgi.import>
     <osgi.dynamicImport />
     <osgi.private />
                
> Cyclic dependency in OSGi-context. Apache Log4j SLF4J Binding <-> slf4j-api
> ---------------------------------------------------------------------------
>
>                 Key: LOG4J2-346
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-346
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core, SLF4J Bridge
>    Affects Versions: 2.0-beta4, 2.0-beta8, 2.0-beta9
>         Environment: OSGi R5 / Apache Felix 4.x
>            Reporter: Roland Weiglhofer
>              Labels: Bundle, CyclicDependency, OSGi, SLF4J
>             Fix For: 2.0-beta9, 2.0
>
>         Attachments: log4j2-slf4j-impl.patch
>
>
> The bundle "Apache Log4j SLF4J Binding" (2.0.0.beta8) has an unresolved 
> dependency to the package org.slf4j which is exported by the slf4j-api 
> bundle. The Slf4j-api bundle has also an unresolved dependency to the package 
> org.slf4j.impl which is exported by the bundle "Apache Log4j SLF4J Binding". 
> This is a cyclic dependency in OSGi-context. Without the slf4j-api everything 
> works. But the Slf4j-api bundle is needed because of given dependencies of 
> third-party-bundles. The "Apache Log4j SLF4J Binding" bundle should also 
> export the package org.slf4j.
> ----------------------------------------------------------------
>    ID|State      |Level|Name
>     0|Active     |    0|System Bundle (4.2.1)
>     4|Active     |    2|Apache Felix Bundle Repository (1.6.6)
>     5|Active     |    2|Apache Felix Configuration Admin Service (1.6.0)
>     6|Active     |    2|Apache Felix Gogo Command (0.12.0)
>     7|Active     |    2|Apache Felix Gogo Runtime (0.10.0)
>     8|Active     |    2|Apache Felix Gogo Shell (0.10.0)
>     9|Resolved   |    2|Apache Felix Security Provider (2.2.0)
>    10|Active     |    2|Apache Felix Shell Service (1.4.3)
>    11|Installed  |    2|Apache Log4j 1.x Compatibility API (2.0.0.beta8)
>    12|Active     |    2|Apache Log4j API (2.0.0.beta8)
>    13|Installed  |    2|Apache Log4j Commons Logging Bridge (2.0.0.beta8)
>    14|Installed  |    2|Apache Log4j Core (2.0.0.beta8)
>    15|Installed  |    2|Apache Log4j SLF4J Binding (2.0.0.beta8)
>    16|Active     |    2|cal10n-api (0.7.4)
>    17|Active     |    2|Commons IO (2.4.0)
>    18|Active     |    2|Commons Lang (2.6.0)
>    19|Active     |    2|Data mapper for Jackson JSON processor (1.9.13)
>    20|Active     |    2|Jackson JSON processor (1.9.13)
>    21|Active     |    2|JSON.simple (1.1.1)
>    22|Installed  |    2|slf4j-api (1.5.11)
>    23|Installed  |    2|slf4j-ext (1.5.11)
> Unresolved constraint in bundle org.apache.logging.log4j-slf4j-impl [15]: 
> Unable to resolve 15.0: missing requirement [15.0] osgi.wiring.package; 
> (osgi.wiring.package=org.slf4j) [caused by: Unable to resolve 22.0: missing 
> requirement [22.0] osgi.wiring.package; 
> (&(osgi.wiring.package=org.slf4j.impl)(version>=1.5.5))]
> Unresolved constraint in bundle slf4j.api [22]: Unable to resolve 22.0: 
> missing requirement [22.0] osgi.wiring.package; 
> (&(osgi.wiring.package=org.slf4j.impl)(version>=1.5.5))

--
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

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-dev-h...@logging.apache.org

Reply via email to