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

Installation error: Could not initialize class com.sun.jna.Pointer

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Critical
    • Resolution: Unresolved
    • Component/s: core
    • Labels:
    • Environment:
      Windows 8.1
    • Similar Issues:

      Description

      Everytime I try to configure jenkins as a windows service, I get the following error:

      javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Pointer
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:123)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      	at org.eclipse.jetty.server.Server.handle(Server.java:370)
      	at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      	at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
      	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
      	at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      	at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Pointer
      	at com.sun.jna.PointerType.<init>(PointerType.java:25)
      	at com.sun.jna.ptr.ByReference.<init>(ByReference.java:30)
      	at com.sun.jna.ptr.IntByReference.<init>(IntByReference.java:22)
      	at com.sun.jna.ptr.IntByReference.<init>(IntByReference.java:18)
      	at hudson.util.jna.RegistryKey.open(RegistryKey.java:222)
      	at hudson.util.jna.RegistryKey.openReadonly(RegistryKey.java:218)
      	at hudson.util.jna.DotNet.isInstalled(DotNet.java:50)
      	at hudson.lifecycle.WindowsInstallerLink.doDoInstall(WindowsInstallerLink.java:114)
      	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:298)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:121)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	... 47 more
      

        Attachments

          Activity

          Hide
          tosihiro2007 Toshihiro Sakurai added a comment -

          Attaching possible cause.

          Show
          tosihiro2007 Toshihiro Sakurai added a comment - Attaching possible cause.
          Hide
          zmarko Marko Zivanovic added a comment -

          The problem appears to be caused by a lack of permissions. I encountered the same issue and starting browser (Firefox) as administrator allowed the installation to proceed.

          Show
          zmarko Marko Zivanovic added a comment - The problem appears to be caused by a lack of permissions. I encountered the same issue and starting browser (Firefox) as administrator allowed the installation to proceed.
          Hide
          urinalcake Michael Sanders added a comment -

          I'm having this issue happen at the moment. I created a new VPS running Windows 10 2016, and the only user is the Administrator user.

          Using said Administrator user, launching the jnlp results in a successful connection. However, installing the service results in the error from the original post. Additionally, the Jenkins master logs states the same things in the problem.txt attachment from Marko Zivanovic.

          Show
          urinalcake Michael Sanders added a comment - I'm having this issue happen at the moment. I created a new VPS running Windows 10 2016, and the only user is the Administrator user. Using said Administrator user, launching the jnlp results in a successful connection. However, installing the service results in the error from the original post. Additionally, the Jenkins master logs states the same things in the problem.txt attachment from Marko Zivanovic.
          Hide
          chinhodado chin ho added a comment -

          I had the same issue and I was able to fix it by running jenkins like this (in elevated CMD window):

          java "-Djna.nosys=true" -jar jenkins.war

          then Jenkins was able to install as a service.

          Also I added that system property to the jenkins.xml file like this:

          <arguments>-Xrs -Xmx1536m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Djna.nosys=true -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>

          Show
          chinhodado chin ho added a comment - I had the same issue and I was able to fix it by running jenkins like this (in elevated CMD window): java "-Djna.nosys=true" -jar jenkins.war then Jenkins was able to install as a service. Also I added that system property to the jenkins.xml file like this: <arguments>-Xrs -Xmx1536m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Djna.nosys=true -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>

            People

            • Assignee:
              Unassigned
              Reporter:
              tosihiro2007 Toshihiro Sakurai
            • Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated: