[ https://issues.apache.org/jira/browse/LOG4J2-396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13759699#comment-13759699 ]
Remko Popma commented on LOG4J2-396: ------------------------------------ Thanks for showing the sample program. This looks normal. I cannot reproduce the problem in my environment. The IllegalAccessError is very, very strange. The javadoc for this exception says: "Thrown if an application attempts to access or modify a field, or to call a method that it does not have access to. Normally, this error is caught by the compiler; this error can only occur at run time if the definition of a class has incompatibly changed." I suspect there is something strange with your environment. Can you give some more details on which JVM you are using (vendor, version), which version of Eclipse? In your Run Configuration, which JRE are you using (and does that match the Compiler compliance level in Project Properties > Java Compiler)? > Disable JMX by default > ---------------------- > > Key: LOG4J2-396 > URL: https://issues.apache.org/jira/browse/LOG4J2-396 > Project: Log4j 2 > Issue Type: Improvement > Components: JMX > Affects Versions: 2.0-beta8 > Reporter: Abhinav Shah > > Shouldn't we disable JMX by default? > I see currently in Log4jContextFactory, the MBeans are being registered by > default - > {code} > public Log4jContextFactory() { > final String sel = > PropertiesUtil.getProperties().getStringProperty(Constants.LOG4J_CONTEXT_SELECTOR); > if (sel != null) { > try { > final Class<?> clazz = Loader.loadClass(sel); > if (clazz != null && > ContextSelector.class.isAssignableFrom(clazz)) { > selector = (ContextSelector) clazz.newInstance(); > } > } catch (final Exception ex) { > LOGGER.error("Unable to create context " + sel, ex); > } > } > if (selector == null) { > selector = new ClassLoaderContextSelector(); > } > try { > Server.registerMBeans(selector); > } catch (final Exception ex) { > LOGGER.error("Could not start JMX", ex); > } > } > {code} > The is causing errors in my standalone java application which is a simple > console utility. > I am getting the following error as Log4j tries to register MBeans - > {code} > java.lang.IllegalAccessError: tried to access method > javax.management.StandardMBean.<init>(Ljava/lang/Object;Ljava/lang/Class;Z)V > from class sun.management.ManagementFactory > at > sun.management.ManagementFactory.addMXBean(ManagementFactory.java:249) > at > sun.management.ManagementFactory.createPlatformMBeanServer(ManagementFactory.java:304) > at > java.lang.management.ManagementFactory.getPlatformMBeanServer(ManagementFactory.java:504) > at > org.apache.logging.log4j.core.jmx.Server.registerMBeans(Server.java:107) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.<init>(Log4jContextFactory.java:59) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > at java.lang.Class.newInstance0(Class.java:355) > at java.lang.Class.newInstance(Class.java:308) > at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:85) > at > org.slf4j.helpers.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:90) > at > org.slf4j.helpers.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:46) > at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:270) > at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:281) > at > com.labcorp.eag.util.jms.SaveQueueToFiles.<clinit>(SaveQueueToFiles.java:45) > Exception in thread "main" > {code} > Currently I overcome this error by setting > {code} > -Dlog4j2.disable.jmx=true > {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 --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org