You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Jonathan Hanba (JIRA)" <ji...@apache.org> on 2015/08/01 17:57:04 UTC

[jira] [Comment Edited] (LOG4J2-1081) Log4J 2.3.0 - org.apache.logging.log4j.core.osgi.BundleContextSelector - ClassNotFoundException

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

Jonathan Hanba edited comment on LOG4J2-1081 at 8/1/15 3:56 PM:
----------------------------------------------------------------

The pom.xml file I have attached contains the changes necessary for OSGi to work as I outlined in my comment.


was (Author: hanbaj):
This pom.xml file contains the necessary changes in my comment below.

> Log4J 2.3.0 - org.apache.logging.log4j.core.osgi.BundleContextSelector - ClassNotFoundException
> -----------------------------------------------------------------------------------------------
>
>                 Key: LOG4J2-1081
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1081
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: API
>    Affects Versions: 2.3
>         Environment: Windows 7 x86-64
> Eclipse Mars
> org.eclipse.osgi;version='[3.10.1.v20140909-1633,3.10.1.v20140909-1633]'
> JavaSE-1.8
>            Reporter: Jonathan Hanba
>            Priority: Blocker
>         Attachments: pom.xml
>
>
> I am trying to run a very basic OSGi bundle that uses Log4J version 2.3.0. When I run the bundle, I get a java.lang.ClassNotFoundException. Here is the stack trace reported by the error.
> ERROR StatusLogger Unable to create context org.apache.logging.log4j.core.osgi.BundleContextSelector java.lang.ClassNotFoundException: org.apache.logging.log4j.core.osgi.BundleContextSelector cannot be found by org.apache.logging.log4j.api_2.3.0
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:432)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:345)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:337)
> 	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
> 	at java.lang.ClassLoader.loadClass(Unknown Source)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Unknown Source)
> 	at org.apache.logging.log4j.util.LoaderUtil.loadClass(LoaderUtil.java:117)
> 	at org.apache.logging.log4j.util.LoaderUtil.newInstanceOf(LoaderUtil.java:136)
> 	at org.apache.logging.log4j.util.LoaderUtil.newCheckedInstanceOf(LoaderUtil.java:163)
> 	at org.apache.logging.log4j.core.util.Loader.newCheckedInstanceOf(Loader.java:311)
> 	at org.apache.logging.log4j.core.impl.Log4jContextFactory.createContextSelector(Log4jContextFactory.java:96)
> 	at org.apache.logging.log4j.core.impl.Log4jContextFactory.<init>(Log4jContextFactory.java:54)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
> 	at java.lang.reflect.Constructor.newInstance(Unknown Source)
> 	at java.lang.Class.newInstance(Unknown Source)
> 	at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:96)
> 	at com.ge.ip.systemtest2.osgi.example.Activator.<clinit>(Activator.java:16)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
> 	at java.lang.reflect.Constructor.newInstance(Unknown Source)
> 	at java.lang.Class.newInstance(Unknown Source)
> 	at org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:755)
> 	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:706)
> 	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:936)
> 	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:319)
> 	at org.eclipse.osgi.container.Module.doStart(Module.java:571)
> 	at org.eclipse.osgi.container.Module.start(Module.java:439)
> 	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:393)
> 	at aQute.launcher.Launcher.update(Launcher.java:436)
> 	at aQute.launcher.Launcher.activate(Launcher.java:349)
> 	at aQute.launcher.Launcher.run(Launcher.java:238)
> 	at aQute.launcher.Launcher.main(Launcher.java:87)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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