Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-15466

Fatal Error No Class Definition found for Kernel32

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • core
    • Windows 7 64bit
      jdk1.7.0_07

      Hi,
      We are periodically getting issues with the hudson.util.jna.Kernel32 class not being found when plugins are calling the isSymlink method.

      [xUnit] [INFO] - [UnitTest-1.4 (default)] - 1 test report file(s) were found with the pattern 'tests.xml' relative to 'C:\Jenkins\jobs\NetworkTeam Test\workspace' for the testing framework 'UnitTest-1.4 (default)'.
      FATAL: Could not initialize class hudson.util.jna.Kernel32
      java.lang.NoClassDefFoundError: Could not initialize class hudson.util.jna.Kernel32
      	at hudson.util.jna.Kernel32Utils.isJunctionOrSymlink(Kernel32Utils.java:62)
      	at hudson.Util.isSymlink(Util.java:322)
      	at hudson.Util.deleteRecursive(Util.java:283)
      	at hudson.FilePath$11.invoke(FilePath.java:982)
      	at hudson.FilePath$11.invoke(FilePath.java:980)
      	at hudson.FilePath.act(FilePath.java:851)
      	at hudson.FilePath.act(FilePath.java:824)
      	at hudson.FilePath.deleteRecursive(FilePath.java:980)
      	at org.jenkinsci.plugins.xunit.XUnitPublisher.processDeletion(XUnitPublisher.java:374)
      	at org.jenkinsci.plugins.xunit.XUnitPublisher.performXUnit(XUnitPublisher.java:124)
      	at org.jenkinsci.plugins.xunit.XUnitPublisher.perform(XUnitPublisher.java:93)
      	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:807)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:782)
      	at hudson.model.Build$BuildExecution.post2(Build.java:183)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:729)
      	at hudson.model.Run.execute(Run.java:1541)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:236)
      

      The class file seems to be present and correct compared with the github versions and we are running with Admin access to the filesystem.

      Any help would be appreciated.
      Rob

          [JENKINS-15466] Fatal Error No Class Definition found for Kernel32

          Rob Starkey created issue -

          Code changed in jenkins
          User: Kohsuke Kawaguchi
          Path:
          core/src/main/java/hudson/util/jna/InitializationErrorInvocationHandler.java
          core/src/main/java/hudson/util/jna/Kernel32Utils.java
          http://jenkins-ci.org/commit/jenkins/7e8bf72eac30952c33d8dabb653bf87cd25ff991
          Log:
          JENKINS-15466 remember the cause of the initialization failure given that JVM doesn't remember.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: core/src/main/java/hudson/util/jna/InitializationErrorInvocationHandler.java core/src/main/java/hudson/util/jna/Kernel32Utils.java http://jenkins-ci.org/commit/jenkins/7e8bf72eac30952c33d8dabb653bf87cd25ff991 Log: JENKINS-15466 remember the cause of the initialization failure given that JVM doesn't remember.

          dogfood added a comment -

          Integrated in jenkins_main_trunk #1987
          JENKINS-15466 remember the cause of the initialization failure given that JVM doesn't remember. (Revision 7e8bf72eac30952c33d8dabb653bf87cd25ff991)

          Result = UNSTABLE
          kohsuke : 7e8bf72eac30952c33d8dabb653bf87cd25ff991
          Files :

          • core/src/main/java/hudson/util/jna/InitializationErrorInvocationHandler.java
          • core/src/main/java/hudson/util/jna/Kernel32Utils.java

          dogfood added a comment - Integrated in jenkins_main_trunk #1987 JENKINS-15466 remember the cause of the initialization failure given that JVM doesn't remember. (Revision 7e8bf72eac30952c33d8dabb653bf87cd25ff991) Result = UNSTABLE kohsuke : 7e8bf72eac30952c33d8dabb653bf87cd25ff991 Files : core/src/main/java/hudson/util/jna/InitializationErrorInvocationHandler.java core/src/main/java/hudson/util/jna/Kernel32Utils.java

          I got similar exception while wiping out remote workspace on Jenkins 1.486:

          Status Code: 500
          
          Exception: remote file operation failed: D:\AppData\Jenkins\workspace\tac at hudson.remoting.Channel@5683bdec:Analysis 1
          Stacktrace:
          hudson.util.IOException2: remote file operation failed: D:\AppData\Jenkins\workspace\tac at hudson.remoting.Channel@5683bdec:Analysis 1
          	at hudson.FilePath.act(FilePath.java:847)
          	at hudson.FilePath.act(FilePath.java:824)
          	at hudson.FilePath.deleteRecursive(FilePath.java:980)
          	at hudson.model.AbstractProject.doDoWipeOutWorkspace(AbstractProject.java:1901)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          	at java.lang.reflect.Method.invoke(Unknown Source)
          	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
          	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
          	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
          	at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
          	at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          	at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
          	at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
          	at hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
          	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:63)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
          	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
          	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          	at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
          	at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215)
          	at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
          	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
          	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          	at java.util.concurrent.FutureTask.run(Unknown Source)
          	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          	at java.lang.Thread.run(Unknown Source)
          Caused by: java.io.IOException: Remote call on Analysis 1 failed
          	at hudson.remoting.Channel.call(Channel.java:673)
          	at hudson.FilePath.act(FilePath.java:840)
          	... 75 more
          Caused by: java.lang.NoClassDefFoundError: Could not initialize class hudson.util.jna.Kernel32
          	at hudson.util.jna.Kernel32Utils.isJunctionOrSymlink(Kernel32Utils.java:62)
          	at hudson.Util.isSymlink(Util.java:322)
          	at hudson.Util.deleteRecursive(Util.java:283)
          	at hudson.FilePath$11.invoke(FilePath.java:982)
          	at hudson.FilePath$11.invoke(FilePath.java:980)
          	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2308)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:118)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
          	at hudson.remoting.Request$2.run(Request.java:326)
          	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
          	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          	at java.util.concurrent.FutureTask.run(Unknown Source)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          	at hudson.remoting.Engine$1$1.run(Engine.java:60)
          	... 1 more
          
          Generated by Stapler at Fri Oct 19 09:13:10 CST 2012
          

          Pei-Tang Huang added a comment - I got similar exception while wiping out remote workspace on Jenkins 1.486: Status Code: 500 Exception: remote file operation failed: D:\AppData\Jenkins\workspace\tac at hudson.remoting.Channel@5683bdec:Analysis 1 Stacktrace: hudson.util.IOException2: remote file operation failed: D:\AppData\Jenkins\workspace\tac at hudson.remoting.Channel@5683bdec:Analysis 1 at hudson.FilePath.act(FilePath.java:847) at hudson.FilePath.act(FilePath.java:824) at hudson.FilePath.deleteRecursive(FilePath.java:980) at hudson.model.AbstractProject.doDoWipeOutWorkspace(AbstractProject.java:1901) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488) at org.kohsuke.stapler.Stapler.service(Stapler.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) at hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:63) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang. Thread .run(Unknown Source) Caused by: java.io.IOException: Remote call on Analysis 1 failed at hudson.remoting.Channel.call(Channel.java:673) at hudson.FilePath.act(FilePath.java:840) ... 75 more Caused by: java.lang.NoClassDefFoundError: Could not initialize class hudson.util.jna.Kernel32 at hudson.util.jna.Kernel32Utils.isJunctionOrSymlink(Kernel32Utils.java:62) at hudson.Util.isSymlink(Util.java:322) at hudson.Util.deleteRecursive(Util.java:283) at hudson.FilePath$11.invoke(FilePath.java:982) at hudson.FilePath$11.invoke(FilePath.java:980) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2308) at hudson.remoting.UserRequest.perform(UserRequest.java:118) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:326) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at hudson.remoting.Engine$1$1.run(Engine.java:60) ... 1 more Generated by Stapler at Fri Oct 19 09:13:10 CST 2012

          Thomas Fields added a comment -

          I'm getting this same issue when cleaning the workspace. Please release a fix asap!

          Thomas Fields added a comment - I'm getting this same issue when cleaning the workspace. Please release a fix asap!

          Thomas Fields added a comment -

          I've reported the clean workspace issue here https://issues.jenkins-ci.org/browse/JENKINS-15579

          Thomas Fields added a comment - I've reported the clean workspace issue here https://issues.jenkins-ci.org/browse/JENKINS-15579
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-15579 [ JENKINS-15579 ]

          Jesse Glick added a comment -

          Should not occur when using Java 7 for the node performing the work.

          Jesse Glick added a comment - Should not occur when using Java 7 for the node performing the work.

          Sergey D added a comment -

          We are getting the same issue periodically on Win2008R2 64bit, jdk1.7.0_06, Jenkins 1.478.

          Sergey D added a comment - We are getting the same issue periodically on Win2008R2 64bit, jdk1.7.0_06, Jenkins 1.478.

          Jesse Glick added a comment -

          @allinonething: my comment about Java 7 applies to 1.483+.

          Jesse Glick added a comment - @allinonething: my comment about Java 7 applies to 1.483+.

            Unassigned Unassigned
            rstarkey Rob Starkey
            Votes:
            14 Vote for this issue
            Watchers:
            29 Start watching this issue

              Created:
              Updated:
              Resolved: