[ https://issues.apache.org/jira/browse/LOG4J2-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13651706#comment-13651706 ]
Bob Kerns edited comment on LOG4J2-238 at 5/8/13 8:30 AM: ---------------------------------------------------------- I'm attaching a git-formatted patch, only lightly tested and in need of some cleanup before applying, but posting for review purposes. This uses OSGi declarative services to link API and implementation (core), and provides a OSGi-specific LoggingContextFactory implementation. A known flaw is that it extends the search for configurations for all environments, not just OSGi. Some adjustments to ConfigurationFactory will be needed to avoid this. was (Author: rwk): Git-formatted patch, only lightly tested and in need of some cleanup before applying, but posting for review purposes. This uses OSGi declarative services to link API and implementation (core), and provides a OSGi-specific LoggingContextFactory implementation. A known flaw is that it extends the search for configurations for all environments, not just OSGi. Some adjustments to ConfigurationFactory will be needed to avoid this. > OSGi dependency failures in core > -------------------------------- > > Key: LOG4J2-238 > URL: https://issues.apache.org/jira/browse/LOG4J2-238 > Project: Log4j 2 > Issue Type: Bug > Components: Core > Affects Versions: 2.0-beta5 > Environment: OSGi (Eclipse 4.2.2, but I think the issue is generic > OSGi) > Reporter: Bob Kerns > Labels: OSGi > Attachments: > 0001-LOG4J2-238-and-Log472-159.-OSGi-coordination-of-API-.patch > > > To get the core module to load, in addition to re-fixing what was almost > fixed in LOG4J2-159 I had to make several packages optional. > * com.lmax.disruptor > * com.lmax.disruptor.dsl > * com.lmax.disruptor.util > These provided a dependency on sun.misc, which I could hack around to make > available but isn't normally available in OSGi and thus not a dependency I > can easily put into a product. I believe the dependency is on sun.misc.Unsafe > I'd like to use it... > There is also a direct dependency somewhere on > * sun.misc (also Unsafe) > * com.sun.tools.jconsole -- I think this unlikely to be used in an OSGi > environment, so optional is appropriate. > * org.codehaus.jackson > * org.codehaus.jackson.map > These would be easy enough to satisfy, but since most people won't need JSON > logging, the dependency should be optional. > I think the correct minimal fix is just to make them all optional in the > manifest. Eliminating the need for sun.misc would be a good further step -- 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