Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-1920

ScriptEngineManager is not available in Android and causes a NoClassDefFoundError


    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.8.2
    • Fix Version/s: 2.9.0
    • Component/s: JMX
    • Labels:
    • Environment:

      While using with Android


      Hi Team,

      I integrated Log4j v2.3 initially and I was getting the following crash in my application.

      05-25 09:49:59.099 E/AndroidRuntime(24561): FATAL EXCEPTION: main
      05-25 09:49:59.099 E/AndroidRuntime(24561): java.lang.NoClassDefFoundError: org.apache.logging.log4j.core.lookup.JmxRuntimeInputArgumentsLookup

      Later on, I was checking the open tickets like https://issues.apache.org/jira/browse/LOG4J2-716 and found the issue to be the version that I am using.

      So, I upgraded to latest 2.8.2 version and made some modifications in the code. I see that the above JMX exception is being "caught" and printed in the console. So now I have bypassed that crash and landed in a new crash. I am pasting the stack trace below. Please have a look and advice.

      05-25 15:12:58.634 E/AndroidRuntime(27649): FATAL EXCEPTION: main
      05-25 15:12:58.634 E/AndroidRuntime(27649): java.lang.NoClassDefFoundError: Failed resolution of: Ljavax/script/ScriptEngineManager;
      05-25 15:12:58.634 E/AndroidRuntime(27649): at org.apache.logging.log4j.core.script.ScriptManager.<init>(ScriptManager.java:68)
      05-25 15:12:58.634 E/AndroidRuntime(27649): at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:214)
      05-25 15:12:58.634 E/AndroidRuntime(27649): at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:244)
      05-25 15:12:58.634 E/AndroidRuntime(27649): at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:545)
      05-25 15:12:58.634 E/AndroidRuntime(27649): at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:261)

      This exception occurs when I am trying LoggerContext.start(). Please advise way forward.

      -Ajitha Yasmin




            • Assignee:
              ggregory Gary Gregory
              Ajitha Ajitha
            • Votes:
              0 Vote for this issue
              6 Start watching this issue


              • Created: