• Jenkins 2.144

      While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access. These uses do not seem to be able to be removed or fixed easily in JNR Posix, but Jenkins core does not use JNR Posix by default for anything critical after the changes for JENKINS-36088, so it can be detached.

      We would have to remove the useNativeChmodAndMode option, but that was only added in case of significant regressions with the NIO implementations, but I am not aware of regressions and would be fine with removing the option.

      A stack trace shows:

      WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to method sun.nio.ch.SelChImpl.getFD()
              at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:87)
              at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
              at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
              at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
              at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
              at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
              at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
              at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
              at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
              at hudson.FilePath._chmod(FilePath.java:1611)
              at hudson.FilePath.access$1500(FilePath.java:197)
              at hudson.FilePath$29.invoke(FilePath.java:1596)
              at hudson.FilePath$29.invoke(FilePath.java:1592)
              at hudson.FilePath.act(FilePath.java:998)
              at hudson.FilePath.act(FilePath.java:976)
              at hudson.FilePath.chmod(FilePath.java:1592)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
              at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
              at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
              at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
              at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
              at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
              at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
              at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
              at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
      

      A different stack trace shows:

      WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field sun.nio.ch.FileChannelImpl.fd
              at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:104)
              at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
              at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
              at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
              at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
              at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
              at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
              at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
              at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
              at hudson.FilePath._chmod(FilePath.java:1611)
              at hudson.FilePath.access$1500(FilePath.java:197)
              at hudson.FilePath$29.invoke(FilePath.java:1596)
              at hudson.FilePath$29.invoke(FilePath.java:1592)
              at hudson.FilePath.act(FilePath.java:998)
              at hudson.FilePath.act(FilePath.java:976)
              at hudson.FilePath.chmod(FilePath.java:1592)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
              at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
              at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
              at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
              at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
              at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
              at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
              at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
              at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
      

      A third stack trace shows:

      WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field java.io.FileDescriptor.fd
              at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:118)
              at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
              at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
              at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
              at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
              at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
              at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
              at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
              at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
              at hudson.FilePath._chmod(FilePath.java:1611)
              at hudson.FilePath.access$1500(FilePath.java:197)
              at hudson.FilePath$29.invoke(FilePath.java:1596)
              at hudson.FilePath$29.invoke(FilePath.java:1592)
              at hudson.FilePath.act(FilePath.java:998)
              at hudson.FilePath.act(FilePath.java:976)
              at hudson.FilePath.chmod(FilePath.java:1592)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
              at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
              at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
              at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
              at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
              at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
              at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
              at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
              at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
              at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
              at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
              at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
      

          [JENKINS-46725] [JDK9] Detach JNR-Posix from core

          Mark Waite created issue -
          Mark Waite made changes -
          Epic Link New: JENKINS-40689 [ 177392 ]
          Mark Waite made changes -
          Description Original: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by hudson.remoting.RemoteClassLoader (file:/var/jenkins_home/war/WEB-INF/lib/remoting-3.7.jar) to method java.lang.ClassLoader.getClassLoadingLock(java.lang.String)
                  at hudson.remoting.RemoteClassLoader.<clinit>(RemoteClassLoader.java:330)
                  at hudson.remoting.MultiClassLoaderSerializer$Output.annotateClass(MultiClassLoaderSerializer.java:69)
                  at java.base/java.io.ObjectOutputStream.writeNonProxyDesc(ObjectOutputStream.java:1291)
                  at java.base/java.io.ObjectOutputStream.writeClassDesc(ObjectOutputStream.java:1232)
                  at java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1428)
                  at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
                  at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
                  at hudson.remoting.UserRequest._serialize(UserRequest.java:190)
                  at hudson.remoting.UserRequest.serialize(UserRequest.java:199)
                  at hudson.remoting.UserRequest.<init>(UserRequest.java:64)
                  at hudson.remoting.Channel.call(Channel.java:828)
                  at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:517)
                  at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:390)
                  at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:1074)
                  at hudson.plugins.sshslaves.SSHLauncher.access$500(SSHLauncher.java:145)
                  at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:818)
                  at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:793)
                  at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
                  at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
                  at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
                  at java.base/java.lang.Thread.run(Thread.java:844)
          {noformat}
          New: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to method sun.nio.ch.SelChImpl.getFD()
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:87)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A different stack trace shows:
          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field sun.nio.ch.FileChannelImpl.fd
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:104)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A third stack trace shows:
          {noformat}
          {noformat}
          Mark Waite made changes -
          Description Original: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to method sun.nio.ch.SelChImpl.getFD()
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:87)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A different stack trace shows:
          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field sun.nio.ch.FileChannelImpl.fd
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:104)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A third stack trace shows:
          {noformat}
          {noformat}
          New: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to method sun.nio.ch.SelChImpl.getFD()
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:87)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A different stack trace shows:
          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field sun.nio.ch.FileChannelImpl.fd
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:104)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}

          A third stack trace shows:
          {noformat}
          WARNING: Illegal reflective access by jnr.posix.JavaLibCHelper (file:/var/jenkins_home/war/WEB-INF/lib/jnr-posix-3.0.1.jar) to field java.io.FileDescriptor.fd
                  at jnr.posix.JavaLibCHelper.<clinit>(JavaLibCHelper.java:118)
                  at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:38)
                  at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:20)
                  at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:95)
                  at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:69)
                  at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:38)
                  at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:33)
                  at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:29)
                  at jnr.posix.LazyPOSIX.chmod(LazyPOSIX.java:55)
                  at hudson.FilePath._chmod(FilePath.java:1611)
                  at hudson.FilePath.access$1500(FilePath.java:197)
                  at hudson.FilePath$29.invoke(FilePath.java:1596)
                  at hudson.FilePath$29.invoke(FilePath.java:1592)
                  at hudson.FilePath.act(FilePath.java:998)
                  at hudson.FilePath.act(FilePath.java:976)
                  at hudson.FilePath.chmod(FilePath.java:1592)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.makeReadOnly(InstanceIdentity.java:116)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:105)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:66)
                  at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:40)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
                  at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$68618106.newInstance(<generated>)
                  at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
                  at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
                  at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
                  at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
                  at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
                  at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
                  at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
                  at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
                  at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:424)
          {noformat}
          Oleg Nenashev made changes -
          Labels New: explorator_testing java10_hackathon

          Oleg Nenashev added a comment -

          Needs retesting on Java 10

          Oleg Nenashev added a comment - Needs retesting on Java 10
          Devin Nusbaum made changes -
          Assignee New: Devin Nusbaum [ dnusbaum ]

          Devin Nusbaum added a comment -

          Some of these may be fixed in recent releases, for example see https://github.com/jnr/jnr-posix/issues/108, but we will want need to do some testing.

          Devin Nusbaum added a comment - Some of these may be fixed in recent releases, for example see https://github.com/jnr/jnr-posix/issues/108 , but we will want need to do some testing.
          Devin Nusbaum made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Devin Nusbaum made changes -
          Status Original: In Progress [ 3 ] New: In Review [ 10005 ]

            ndeloof Nicolas De Loof
            markewaite Mark Waite
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: