[go: up one dir, main page]

Menu

#214 Could not start the app when upgrading from 13.15 to 13.17

All
closed-fixed
nobody
bug (1)
1
2025-10-08
2025-09-30
xiyz
No

ENV:

openjdk version "17.0.14" 2025-01-21 LTS
OpenJDK Runtime Environment Corretto-17.0.14.7.1 (build 17.0.14+7-LTS)
OpenJDK 64-Bit Server VM Corretto-17.0.14.7.1 (build 17.0.14+7-LTS, mixed mode, sharing)

YAJSW: yajsw-stable-13.17

Error logs:

starting controller
binding to port 15003
Java version: {}
-Dio.netty.noUnsafe: {}
Thread.isVirtual() is not available:
java.lang.NoSuchMethodException: no such method: java.lang.Thread.isVirtual()boolean/invokeVirtual
at java.base/java.lang.invoke.MemberName.makeAccessException(MemberName.java:976)
at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1117)
at java.base/java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:3649)
at java.base/java.lang.invoke.MethodHandles$Lookup.findVirtual(MethodHandles.java:2680)
at io.netty.util.internal.PlatformDependent0.getIsVirtualThreadMethodHandle(PlatformDependent0.java:488)
at io.netty.util.internal.PlatformDependent0.<clinit>(PlatformDependent0.java:65)
at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:385)
at io.netty.util.internal.PlatformDependent.<clinit>(PlatformDependent.java:94)
at io.netty.channel.DefaultChannelId.defaultProcessId(DefaultChannelId.java:183)
at io.netty.channel.DefaultChannelId.<clinit>(DefaultChannelId.java:83)
at io.netty.channel.AbstractChannel.newId(AbstractChannel.java:111)
at io.netty.channel.AbstractChannel.<init>(AbstractChannel.java:71)
at io.netty.channel.oio.AbstractOioChannel.<init>(AbstractOioChannel.java:55)
at io.netty.channel.oio.AbstractOioMessageChannel.<init>(AbstractOioMessageChannel.java:38)
at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:76)
at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:67)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:44)
at io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:326)
at io.netty.bootstrap.AbstractBootstrap.doBind(AbstractBootstrap.java:288)
at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:284)
at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:276)
at org.rzo.yajsw.controller.jvm.JVMController.start(JVMController.java:275)
at org.rzo.yajsw.wrapper.AbstractWrappedProcess.startInternal(AbstractWrappedProcess.java:1279)
at org.rzo.yajsw.wrapper.AbstractWrappedProcess.start(AbstractWrappedProcess.java:1185)
at org.rzo.yajsw.wrapper.WrappedProcessList.startAll(WrappedProcessList.java:26)
at org.rzo.yajsw.WrapperExe.doConsole(WrapperExe.java:646)
at org.rzo.yajsw.WrapperExe.executeCommand(WrapperExe.java:159)
at org.rzo.yajsw.WrapperExe.main(WrapperExe.java:127)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.rzo.yajsw.boot.WrapperExeBooter.main(WrapperExeBooter.java:49)
Caused by: java.lang.NoSuchMethodError: 'boolean java.lang.Thread.isVirtual()'
at java.base/java.lang.invoke.MethodHandleNatives.resolve(Native Method)
at java.base/java.lang.invoke.MemberName$Factory.resolve(MemberName.java:1085)
at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1114)
... 36 more
sun.misc.Unsafe.theUnsafe: available
sun.misc.Unsafe base methods: all available
java.nio.Buffer.address: available
direct buffer constructor: unavailable
java.lang.UnsupportedOperationException: Reflective setAccessible(true) disabled
at io.netty.util.internal.ReflectionUtil.trySetAccessible(ReflectionUtil.java:36)
at io.netty.util.internal.PlatformDependent0$4.run(PlatformDependent0.java:289)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at io.netty.util.internal.PlatformDependent0.<clinit>(PlatformDependent0.java:281)
at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:385)
at io.netty.util.internal.PlatformDependent.<clinit>(PlatformDependent.java:94)
at io.netty.channel.DefaultChannelId.defaultProcessId(DefaultChannelId.java:183)
at io.netty.channel.DefaultChannelId.<clinit>(DefaultChannelId.java:83)
at io.netty.channel.AbstractChannel.newId(AbstractChannel.java:111)
at io.netty.channel.AbstractChannel.<init>(AbstractChannel.java:71)
at io.netty.channel.oio.AbstractOioChannel.<init>(AbstractOioChannel.java:55)
at io.netty.channel.oio.AbstractOioMessageChannel.<init>(AbstractOioMessageChannel.java:38)
at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:76)
at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:67)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:44)
at io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:326)
at io.netty.bootstrap.AbstractBootstrap.doBind(AbstractBootstrap.java:288)
at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:284)
at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:276)
at org.rzo.yajsw.controller.jvm.JVMController.start(JVMController.java:275)
at org.rzo.yajsw.wrapper.AbstractWrappedProcess.startInternal(AbstractWrappedProcess.java:1279)
at org.rzo.yajsw.wrapper.AbstractWrappedProcess.start(AbstractWrappedProcess.java:1185)
at org.rzo.yajsw.wrapper.WrappedProcessList.startAll(WrappedProcessList.java:26)
at org.rzo.yajsw.WrapperExe.doConsole(WrapperExe.java:646)
at org.rzo.yajsw.WrapperExe.executeCommand(WrapperExe.java:159)
at org.rzo.yajsw.WrapperExe.main(WrapperExe.java:127)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.rzo.yajsw.boot.WrapperExeBooter.main(WrapperExeBooter.java:49)
java.nio.Bits.unaligned: available, {}
jdk.internal.misc.Unsafe.allocateUninitializedArray(int): available
java.nio.DirectByteBuffer.<init>(long, {int,long}): {}
sun.misc.Unsafe: {}
-Dio.netty.tmpdir: {} (java.io.tmpdir)
-Dio.netty.bitMode: {} (sun.arch.data.model)
-Dio.netty.maxDirectMemory: {} bytes
java.nio.ByteBuffer.cleaner(): available
-Dio.netty.noPreferDirect: {}
-Dio.netty.jfr.enabled: {}
-Dio.netty.processId: {} (auto-detected)
-Djava.net.preferIPv4Stack: {}
-Djava.net.preferIPv6Addresses: {}
Loopback interface: {} ({}, {})
{}: {}
-Dio.netty.machineId: {} (auto-detected)
-D{}: {}
-D{}: {}
-Dio.netty.allocator.useCachedMagazinesForNonEventLoopThreads: {}
-Dio.netty.recycler.maxCapacityPerThread: {}
-Dio.netty.recycler.ratio: {}
-Dio.netty.recycler.chunkSize: {}
-Dio.netty.recycler.blocking: {}
-Dio.netty.recycler.batchFastThreadLocalOnly: {}
-Dio.netty.allocator.type: {}
-Dio.netty.threadLocalDirectBufferSize: {}
-Dio.netty.maxThreadLocalCharBufferSize: {}
-Dio.netty.bootstrap.extensions: {}
Controller State: UNKNOWN -> WAITING
binding successfull
controller started
working dir /home/xy/devgrip-2025.4.7
system.env 41
env result 41
spawning wrapped process
...
...
...</init></init></init></init></init></init></clinit></clinit></clinit></init></init></init></init></init></clinit></clinit></clinit>

Discussion

  • rzo

    rzo - 2025-09-30

    hello,
    works for me.
    i am not getting this error.

    OS ?
    checking the code: this is just a warning. your application should be starting just fine.

    if this is not the case: pls provide the full log. and config.
    remember to remove private data such as passwords from these files before posting.

    -- Ron

     
    • xiyz

      xiyz - 2025-09-30

      OS: ubuntu 20.04

      sorry I can't reproduce it no longer

       
  • rzo

    rzo - 2025-09-30

    ps: the exception is only logged in case wrapper.debug is set to true

     
    • xiyz

      xiyz - 2025-09-30

      yes

       
  • rzo

    rzo - 2025-09-30

    ps: however, while testing, i see there is an issue on posix systems:

    java.lang.NoClassDefFoundError: io/netty/util/internal/logging/InternalLoggerFactory

    this requires a new release.

     
    • xiyz

      xiyz - 2025-09-30

      Yes, I saw it too

       
  • xiyz

    xiyz - 2025-09-30

    Overall, after upgrading to 13.17, the application fails to start.

     
  • xiyz

    xiyz - 2025-09-30

    Hi, I can reproduce it.
    These logs are closer to the complete logs and my config

    my config:

    # WARNING - Do not modify any of the properties when an application
    #  using this configuration file has been installed as a service or daemon.
    #  Please uninstall the service before modifying this file.  The
    #  service must then be reinstalled.
    
    #********************************************************************
    # Java Executable Properties
    #********************************************************************
    # Java Application
    wrapper.java.command=java
    
    #********************************************************************
    # @home@
    #********************************************************************
    wrapper.working.dir=${myapp_home}
    
    # Java Main class.  
    # YAJSW: default is "org.rzo.yajsw.app.WrapperJVMMain" 
    # DO NOT SET THIS PROPERTY UNLESS YOU HAVE YOUR OWN IMPLEMENTATION
    # wrapper.java.mainclass=
    
    #********************************************************************
    # tmp folder
    # yajsw creates temporary files named in_.. out_.. err_.. jna..
    # per default these are placed in jna_tmpdir.
    # jna_tmpdir is set in setenv batch file to <yajsw>/tmp
    #********************************************************************
    wrapper.tmp.path = ${jna_tmpdir}
    
    
    #********************************************************************
    # Application main class or native executable
    # One of the following properties MUST be defined
    #********************************************************************
    
    # Java Application main class
    wrapper.java.app.mainclass=@bootstrap.class@
    
    #********************************************************************
    # Application Account
    # Equivalent to Posix sudo or windows runas
    # Note Posix: 
    #     <group>\<user> (note: use \\ in configuration file). 
    #     If no group is configured default group of the user is used
    #********************************************************************
    #wrapper.app.account=
    #wrapper.app.password=
    
    #********************************************************************
    # Java/Groovy Application Properties
    #********************************************************************
    
    # Java Classpath (include wrapper.jar)  Add class path elements as
    #  needed starting from 1
    # YAJSW: all libs required by YAJSW are in the manifest of the wrapper.jar -> only classpath of your application is required
    @classpath1@
    @classpath2@
    @classpath3@
    
    # Application parameters.  Add parameters as needed starting from 1
    wrapper.app.parameter.1 =
    
    # Java Additional Parameters
    wrapper.java.additional.1 = -Djava.awt.headless=true
    wrapper.java.additional.2 = -Dsun.io.useCanonCaches=false
    wrapper.java.additional.3=--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
    wrapper.java.additional.4=--add-opens=java.base/java.lang=ALL-UNNAMED
    wrapper.java.additional.5=--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
    wrapper.java.additional.6=--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
    wrapper.java.additional.7=--add-opens=java.base/java.util=ALL-UNNAMED
    wrapper.java.additional.8=--add-opens=java.base/java.text=ALL-UNNAMED
    wrapper.java.additional.9=--add-opens=java.desktop/java.awt.font=ALL-UNNAMED
    wrapper.java.additional.10=--add-modules=java.se
    wrapper.java.additional.11=--add-exports=java.base/jdk.internal.ref=ALL-UNNAMED
    wrapper.java.additional.12=--add-opens=java.management/sun.management=ALL-UNNAMED
    wrapper.java.additional.13=--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED
    wrapper.java.additional.14=--add-opens=java.base/sun.nio.fs=ALL-UNNAMED
    wrapper.java.additional.15=-Xss1024k
    
    # Initial Java Heap Size (in MB)
    # alternative for wrapper.java.additional.<n>=-Xms
    #
    #wrapper.java.initmemory=512
    
    # % of total RAM
    #wrapper.java.initmemory.relative=10
    
    # Maximum Java Heap Size (in MB)
    # alternative for wrapper.java.additional.<n>=-Xmx
    #wrapper.java.maxmemory=2048
    
    # % of total RAM
    wrapper.java.maxmemory.relative=50
    
    # JSW requires that main class is set as app.parameter property
    # YAJSW: to specify the main class please use wrapper.java.app.mainclass=
    
    #********************************************************************
    # Application environment properties.
    #********************************************************************
    # Adds an environment to the application
    #wrapper.app.env.<key>=<value>
    
    #********************************************************************
    # Wrapper Logging Properties
    #********************************************************************
    # Log Level for console output.  (See docs for log levels)
    wrapper.console.loglevel=INFO
    wrapper.console.format=M
    
    # Log file to use for wrapper output logging.
    wrapper.logfile=${myapp_home}/logs/console.log
    
    # Format of output for the log file.  (See docs for formats)
    # DO NOT MODIFY
    wrapper.logfile.format=M
    
    # Log Level for log file output.  (See docs for log levels)
    wrapper.logfile.loglevel=INFO
    
    # Maximum size that the log file will be allowed to grow to before
    #  the log is rolled. Size is specified in bytes.  The default value
    #  of 0, disables log rolling by size.  May abbreviate with the 'k' (kB) or
    #  'm' (mB) suffix.  For example: 10m = 10 megabytes.
    # If wrapper.logfile does not contain the string ROLLNUM it will be automatically added as suffix of the file name
    wrapper.logfile.maxsize=10m
    
    # Maximum number of rolled log files which will be allowed before old
    #  files are deleted.  The default value of 0 implies no limit.
    wrapper.logfile.maxfiles=10
    
    # Controls the roll mode of the log file
    # possible values: DATE, WRAPPER, JVM
    # If DATE is set wrapper.logfile should contain the string YYYYMMDD
    # If DATE is set and wrapper.logfile.maxsize is set the log file will be rolled by size and date
    # If DATE is set and wrapper.logfile.maxfiles older files rolled by size or date are deleted
    #wrapper.logfile.rollmode=DATE
    
    #********************************************************************
    # Application Console Properties
    #********************************************************************
    # Indicate if console of the application is visible.
    #wrapper.console.visible=false
    
    # Title to use when running as a console
    wrapper.console.title=@app.name@
    
    #********************************************************************
    # Wrapper Windows Service and Posix Daemon Properties
    #********************************************************************
    # Name of the service
    wrapper.ntservice.name=@app.name@
    
    # Display name of the service
    wrapper.ntservice.displayname=@app.long.name@
    
    # Description of the service
    wrapper.ntservice.description=@app.description@
    
    # Service dependencies.  Add dependencies as needed starting from 1
    # wrapper.ntservice.dependency.1=
    
    # Mode in which the service is installed.  AUTO_START or DEMAND_START
    # wrapper.ntservice.starttype=AUTO_START
    
    # Allow the service to interact with the desktop.
    # wrapper.ntservice.interactive=false
    
    # wrapper service user. only for windows. on *nix system this is root.
    # see also wrapper.app.account
    #wrapper.ntservice.account=
    #wrapper.ntservice.password=
    
    #********************************************************************
    # Wrapper Posix Daemon Properties
    #********************************************************************
    # Directory where to store the wrapper pid file. Default: /var/run
    wrapper.daemon.pid.dir = ${myapp_home}/bin
    
    # per default yajsw checks if sytemd is available and will install using systemctl
    # if it is not available it will install for initd
    # with the following property one can force it to use initd or systemd
    # wrapper.daemon.system = initd
    
    # systemd dependencies are set using the properties wrapper.ntservice.dependency.<n>
    # network.target is added by default
    # if the property value does not contain a "." yajsw will concat ".service"
    
    #********************************************************************
    # Wrapper Posix systemd specifc Properties
    #********************************************************************
    # Directory in which to create the service configuration. Default: /etc/systemd/system
    #wrapper.daemon.dir = 
    
    
    
    #********************************************************************
    # Wrapper Posix Daemon initd specific Properties
    #********************************************************************
    # Directory in which to create and execute daemon init scripts. Default: /etc/init.d
    #wrapper.daemon.dir = 
    
    # Directory in which to create K... and S... links. 
    # Default: <wrapper.daemon.dir>/rcX.d
    # For Ubuntu set to /etc/rcX.d
    # The following grooy script should set it correctly for most distros
    wrapper.daemon.run_level_dir=${if (new File('/etc/rc0.d').exists()) return '/etc/rcX.d' else return '/etc/init.d/rcX.d'}
    
    # Setting the runlevels and priorities for automatic startup and stop of the daemon.
    # Similar syntax as the update_rc.d command
    # Default: equivalent to default of update_rc.d
    #wrapper.daemon.update_rc = start 20 2 3 4 . start 30 5 . stop 80 0 1 6
    
    
    #********************************************************************
    # Wrapper System Tray Properties
    #********************************************************************
    # enable system tray
    #wrapper.tray = true
    
    # TCP/IP port. If none is defined multicast discovery is used to find the port
    # Set the port in case multicast is not possible.
    #wrapper.tray.port = 15002
    
    # icon file to use, per default a console icon is used
    #wrapper.tray.icon=
    
    #********************************************************************
    # Exit Code Properties
    # Restart on non zero exit code
    #********************************************************************
    wrapper.on_exit.0=SHUTDOWN
    wrapper.on_exit.default=RESTART
    
    #********************************************************************
    # Posix Signal Properties
    # Restart on non 9,15 signal code
    #********************************************************************
    wrapper.on_signal.9=SHUTDOWN
    wrapper.on_signal.15=SHUTDOWN
    wrapper.on_signal.default=RESTART
    
    #********************************************************************
    # Wrapper JMX
    #
    # connect using for example jconsole per remote access using the url
    #
    # service:jmx:rmi:///jndi/rmi://localhost:1099/server
    #
    # eventl. change port and server name
    #********************************************************************
    # Enable wrapper JMX
    #wrapper.jmx = true
    
    # JMX RMI port. default is 1099
    #wrapper.jmx.rmi.port = 
    
    # JMX RMI credentials
    # mandatory if accessing from remote server
    #wrapper.jmx.rmi.user =
    #wrapper.jmx.rmi.password =
    
    #********************************************************************
    # Wrapper timeouts
    #********************************************************************
    # Number of seconds to allow between the time that the Wrapper starts the application
    # and the  application logon to the wrapper.
    # Default: 30 seconds
    #wrapper.startup.timeout = 
    
    # Number of seconds to allow between the time that the Wrapper asks the application to shutdown and the time that the JVM shuts down. 
    # Default: 30 seconds
    #wrapper.shutdown.timeout = 
    
    # Number of seconds the wrapper waits for a ping message from the java application.
    # If no heart beat is received within a timeout the wrapper assumes that the application
    # is non responsive and will restart it.
    # Default: 30 seconds
    #wrapper.ping.timeout =
    
    # DO NOT MODIFY
    wrapper.restart.reload_configuration=true
    

    Logs:

    starting controller
    binding to port 15003
    Java version: {}
    -Dio.netty.noUnsafe: {}
    Thread.isVirtual() is not available:
    java.lang.NoSuchMethodException: no such method: java.lang.Thread.isVirtual()boolean/invokeVirtual
    at java.base/java.lang.invoke.MemberName.makeAccessException(MemberName.java:976)
    at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1117)
    at java.base/java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:3649)
    at java.base/java.lang.invoke.MethodHandles$Lookup.findVirtual(MethodHandles.java:2680)
    at io.netty.util.internal.PlatformDependent0.getIsVirtualThreadMethodHandle(PlatformDependent0.java:488)
    at io.netty.util.internal.PlatformDependent0.<clinit>(PlatformDependent0.java:65)
    at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:385)
    at io.netty.util.internal.PlatformDependent.<clinit>(PlatformDependent.java:94)
    at io.netty.channel.DefaultChannelId.defaultProcessId(DefaultChannelId.java:183)
    at io.netty.channel.DefaultChannelId.<clinit>(DefaultChannelId.java:83)
    at io.netty.channel.AbstractChannel.newId(AbstractChannel.java:111)
    at io.netty.channel.AbstractChannel.<init>(AbstractChannel.java:71)
    at io.netty.channel.oio.AbstractOioChannel.<init>(AbstractOioChannel.java:55)
    at io.netty.channel.oio.AbstractOioMessageChannel.<init>(AbstractOioMessageChannel.java:38)
    at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:76)
    at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:67)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
    at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:44)
    at io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:326)
    at io.netty.bootstrap.AbstractBootstrap.doBind(AbstractBootstrap.java:288)
    at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:284)
    at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:276)
    at org.rzo.yajsw.controller.jvm.JVMController.start(JVMController.java:275)
    at org.rzo.yajsw.wrapper.AbstractWrappedProcess.startInternal(AbstractWrappedProcess.java:1279)
    at org.rzo.yajsw.wrapper.AbstractWrappedProcess.start(AbstractWrappedProcess.java:1185)
    at org.rzo.yajsw.wrapper.WrappedProcessList.startAll(WrappedProcessList.java:26)
    at org.rzo.yajsw.WrapperExe.doConsole(WrapperExe.java:646)
    at org.rzo.yajsw.WrapperExe.executeCommand(WrapperExe.java:159)
    at org.rzo.yajsw.WrapperExe.main(WrapperExe.java:127)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at org.rzo.yajsw.boot.WrapperExeBooter.main(WrapperExeBooter.java:49)
    Caused by: java.lang.NoSuchMethodError: 'boolean java.lang.Thread.isVirtual()'
    at java.base/java.lang.invoke.MethodHandleNatives.resolve(Native Method)
    at java.base/java.lang.invoke.MemberName$Factory.resolve(MemberName.java:1085)
    at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1114)
    ... 36 more
    sun.misc.Unsafe.theUnsafe: available
    sun.misc.Unsafe base methods: all available
    java.nio.Buffer.address: available
    direct buffer constructor: unavailable
    java.lang.UnsupportedOperationException: Reflective setAccessible(true) disabled
    at io.netty.util.internal.ReflectionUtil.trySetAccessible(ReflectionUtil.java:36)
    at io.netty.util.internal.PlatformDependent0$4.run(PlatformDependent0.java:289)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
    at io.netty.util.internal.PlatformDependent0.<clinit>(PlatformDependent0.java:281)
    at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:385)
    at io.netty.util.internal.PlatformDependent.<clinit>(PlatformDependent.java:94)
    at io.netty.channel.DefaultChannelId.defaultProcessId(DefaultChannelId.java:183)
    at io.netty.channel.DefaultChannelId.<clinit>(DefaultChannelId.java:83)
    at io.netty.channel.AbstractChannel.newId(AbstractChannel.java:111)
    at io.netty.channel.AbstractChannel.<init>(AbstractChannel.java:71)
    at io.netty.channel.oio.AbstractOioChannel.<init>(AbstractOioChannel.java:55)
    at io.netty.channel.oio.AbstractOioMessageChannel.<init>(AbstractOioMessageChannel.java:38)
    at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:76)
    at io.netty.channel.socket.oio.OioServerSocketChannel.<init>(OioServerSocketChannel.java:67)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
    at io.netty.channel.ReflectiveChannelFactory.newChannel(ReflectiveChannelFactory.java:44)
    at io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:326)
    at io.netty.bootstrap.AbstractBootstrap.doBind(AbstractBootstrap.java:288)
    at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:284)
    at io.netty.bootstrap.AbstractBootstrap.bind(AbstractBootstrap.java:276)
    at org.rzo.yajsw.controller.jvm.JVMController.start(JVMController.java:275)
    at org.rzo.yajsw.wrapper.AbstractWrappedProcess.startInternal(AbstractWrappedProcess.java:1279)
    at org.rzo.yajsw.wrapper.AbstractWrappedProcess.start(AbstractWrappedProcess.java:1185)
    at org.rzo.yajsw.wrapper.WrappedProcessList.startAll(WrappedProcessList.java:26)
    at org.rzo.yajsw.WrapperExe.doConsole(WrapperExe.java:646)
    at org.rzo.yajsw.WrapperExe.executeCommand(WrapperExe.java:159)
    at org.rzo.yajsw.WrapperExe.main(WrapperExe.java:127)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:569)
    at org.rzo.yajsw.boot.WrapperExeBooter.main(WrapperExeBooter.java:49)
    java.nio.Bits.unaligned: available, {}
    jdk.internal.misc.Unsafe.allocateUninitializedArray(int): available
    java.nio.DirectByteBuffer.<init>(long, {int,long}): {}
    sun.misc.Unsafe: {}
    -Dio.netty.tmpdir: {} (java.io.tmpdir)
    -Dio.netty.bitMode: {} (sun.arch.data.model)
    -Dio.netty.maxDirectMemory: {} bytes
    java.nio.ByteBuffer.cleaner(): available
    -Dio.netty.noPreferDirect: {}
    -Dio.netty.jfr.enabled: {}
    -Dio.netty.processId: {} (auto-detected)
    -Djava.net.preferIPv4Stack: {}
    -Djava.net.preferIPv6Addresses: {}
    Loopback interface: {} ({}, {})
    {}: {}
    -Dio.netty.machineId: {} (auto-detected)
    -D{}: {}
    -D{}: {}
    -Dio.netty.allocator.useCachedMagazinesForNonEventLoopThreads: {}
    -Dio.netty.recycler.maxCapacityPerThread: {}
    -Dio.netty.recycler.ratio: {}
    -Dio.netty.recycler.chunkSize: {}
    -Dio.netty.recycler.blocking: {}
    -Dio.netty.recycler.batchFastThreadLocalOnly: {}
    -Dio.netty.allocator.type: {}
    -Dio.netty.threadLocalDirectBufferSize: {}
    -Dio.netty.maxThreadLocalCharBufferSize: {}
    -Dio.netty.bootstrap.extensions: {}
    Controller State: UNKNOWN -> WAITING
    binding successfull
    controller started
    working dir /home/xy/devgrip-2025.4.7
    system.env 41
    env result 41
    spawning wrapped process
    exec:/home/xx/.sdkman/candidates/java/17.0.14-amzn/bin/java -classpath many jar -Djava.awt.headless=true -Dsun.io.useCanonCaches=false --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-modules=java.se --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-opens=java.management/sun.management=ALL-UNNAMED --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED --add-opens=java.base/sun.nio.fs=ALL-UNNAMED -Xss1024k -Xmx8015m -Dwrapper_home=/home/xy/devgrip-2025.4.7/boot -Ddevgrip_home=/home/xy/devgrip-2025.4.7 -Dwrapper.port=15003 -Dwrapper.key=-9126167014448874948 -Dwrapper.teeName=-9126167014448874948$1759235544485 -Dwrapper.tmp.path=/home/xy/devgrip-2025.4.7/boot/tmp -Djna_tmpdir=/home/xy/devgrip-2025.4.7/boot/tmp -Dwrapper.config=/home/xy/devgrip-2025.4.7/conf/wrapper.conf -Dwrapper.java.command=/home/xy/.sdkman/candidates/java/17.0.14-amzn/bin/java -Dwrapper.ntservice.java.command=/home/xy/.sdkman/candidates/java/17.0.14-amzn/bin/java org.rzo.yajsw.app.WrapperJVMMain
    posix spawn setting env var PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/orbstack-guest/bin:/opt/orbstack-guest/data/bin/cmdlinks
    posix spawn setting env var BROWSER=/opt/orbstack-guest/bin/open
    posix spawn setting env var LESSCLOSE=/usr/bin/lesspipe %s %s
    posix spawn setting env var conf_file=/home/xy/devgrip-2025.4.7/conf/wrapper.conf
    posix spawn setting env var JAVA_HOME=/home/xy/.sdkman/candidates/java/current
    posix spawn setting env var TERM=xterm-256color
    posix spawn setting env var DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/501/bus
    posix spawn setting env var LANG=C.UTF-8
    posix spawn setting env var XDG_SESSION_TYPE=tty
    posix spawn setting env var COMMAND_MODE=unix2003
    posix spawn setting env var wrapper_jar=/home/xy/devgrip-2025.4.7/boot/wrapper.jar
    posix spawn setting env var COLORTERM=truecolor
    posix spawn setting env var SDKMAN_DIR=/home/xy/.sdkman
    posix spawn setting env var LOGNAME=xy
    posix spawn setting env var PWD=/home/xy/devgrip-2025.4.7/bin
    posix spawn setting env var TERM_PROGRAM_VERSION=v0.2025.09.10.08.11.stable_01
    posix spawn setting env var XDG_SESSION_CLASS=user
    posix spawn setting env var SDKMAN_CANDIDATES_DIR=/home/xy/.sdkman/candidates
    posix spawn setting env var __CFBundleIdentifier=dev.warp.Warp-Stable
    posix spawn setting env var LESSOPEN=| /usr/bin/lesspipe %s
    posix spawn setting env var SHELL=/bin/bash
    posix spawn setting env var TERM_PROGRAM=WarpTerminal
    posix spawn setting env var wrapper_app9_jar=/home/xy/devgrip-2025.4.7/boot/wrapperApp9.jar
    posix spawn setting env var wrapper_java_options=-Xmx30m
    posix spawn setting env var SDKMAN_CANDIDATES_API=https://api.sdkman.io/2
    posix spawn setting env var OLDPWD=/home/xy/devgrip-2025.4.7/boot
    posix spawn setting env var SDKMAN_PLATFORM=linuxarm64
    posix spawn setting env var USER=xy
    posix spawn setting env var java_exe=/home/xy/.sdkman/candidates/java/current/bin/java
    posix spawn setting env var LaunchInstanceID=E216BD5B-B8CA-49AE-89BC-48F1F1CBC35A
    posix spawn setting env var SSH_AUTH_SOCK=/opt/orbstack-guest/run/host-ssh-agent.sock
    posix spawn setting env var wrapper_java_sys_options=-Djna_tmpdir=/home/xy/devgrip-2025.4.7/boot/tmp
    posix spawn setting env var wrapper_app_jar=/home/xy/devgrip-2025.4.7/boot/wrapperApp.jar
    posix spawn setting env var SSH_CONNECTION=::1 0 ::1 22
    posix spawn setting env var wrapper_home=/home/xy/devgrip-2025.4.7/boot
    posix spawn setting env var devgrip_home=/home/xy/devgrip-2025.4.7
    posix spawn setting env var __CF_USER_TEXT_ENCODING=0x1F5:0x19:0x34
    posix spawn setting env var XDG_RUNTIME_DIR=/run/user/501
    posix spawn setting env var LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31:.esd=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.webp=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:.xspf=00;36:
    posix spawn setting env var SHLVL=1
    posix spawn setting env var HOME=/home/xy
    spawn exec: /home/xy/.sdkman/candidates/java/current/bin/java -Djna_tmpdir=/home/xy/devgrip-2025.4.7/boot/tmp -classpath /home/xy/devgrip-2025.4.7/boot/wrapper.jar:/home/xy/devgrip-2025.4.7/boot/lib/core/jna/jna-5.12.1.jar -Dwrapperx.workingdir=/home/xy/devgrip-2025.4.7 org.rzo.yajsw.os.posix.PosixSpawnMain /home/candidates/java/17.0.14-amzn/bin/java -classpath many-jar -Djava.awt.headless=true -Dsun.io.useCanonCaches=false --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-modules=java.se --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-opens=java.management/sun.management=ALL-UNNAMED --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED --add-opens=java.base/sun.nio.fs=ALL-UNNAMED -Xss1024k -Xmx8015m -Dwrapper_home=/home/xy/devgrip-2025.4.7/boot -Ddevgrip_home=/home/xy/devgrip-2025.4.7 -Dwrapper.port=15003 -Dwrapper.key=-9126167014448874948 -Dwrapper.teeName=-9126167014448874948$1759235544485 -Dwrapper.tmp.path=/home/xy/devgrip-2025.4.7/boot/tmp -Djna_tmpdir=/home/xy/devgrip-2025.4.7/boot/tmp -Dwrapper.config=/home/xy/devgrip-2025.4.7/conf/wrapper.conf -Dwrapper.java.command=/home/xy/.sdkman/candidates/java/17.0.14-amzn/bin/java -Dwrapper.ntservice.java.command=/home/xy/.sdkman/candidates/java/17.0.14-amzn/bin/java org.rzo.yajsw.app.WrapperJVMMain
    posix_spawn pid 6256
    post start false -9126167014448874948$1759235544485
    started process with pid 6256
    waiting for termination of process
    set state STARTING->RUNNING
    waitpid 6256 256
    exit code posix process: 256 application(status/signal): 1/-1
    process terminated
    Controller State: WAITING -> PROCESS_KILLED
    restart process due to default exit code rule
    restart internal RUNNING controller killed restart handler
    set state RUNNING->RESTART
    restarting 1 time
    set state RESTART->RESTART_STOP
    stopping process with pid/timeout 6256 45000
    Controller State: PROCESS_KILLED -> USER_STOP
    Controller State: USER_STOP -> WAITING_CLOSED
    session closed -> waiting
    killing 6256
    process exit code: 1
    set state RESTART_STOP->RESTART_WAIT
    [null - INFO] 25-09-30 20:32:25 gobler terminated OUTPUT 6256
    Exception in org.rzo.yajsw.log.MyLogger: java.lang.NullPointerException: Cannot invoke "java.nio.ByteBuffer.hasRemaining()" because "this.buf" is null
    org.rzo.yajsw.io.CyclicBufferFileInputStream$1.read(CyclicBufferFileInputStream.java:210)
    java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:282)
    java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
    java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287)
    java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330)
    java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190)
    java.base/java.io.InputStreamReader.read(InputStreamReader.java:177)
    java.base/java.io.BufferedReader.fill(BufferedReader.java:162)
    java.base/java.io.BufferedReader.readLine(BufferedReader.java:329)
    java.base/java.io.BufferedReader.readLine(BufferedReader.java:396)
    org.rzo.yajsw.wrapper.AbstractWrappedProcess$Gobler.run(AbstractWrappedProcess.java:3281)
    java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    java.base/java.lang.Thread.run(Thread.java:840)
    gobler terminated OUTPUT 6256
    [null - INFO] 25-09-30 20:32:25 gobler terminated ERROR 6256
    Exception in org.rzo.yajsw.log.MyLogger: java.lang.NullPointerException: Cannot invoke "java.nio.ByteBuffer.hasRemaining()" because "this.buf" is null
    org.rzo.yajsw.io.CyclicBufferFileInputStream$1.read(CyclicBufferFileInputStream.java:210)
    java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:282)
    java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
    java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287)
    java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330)
    java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190)
    java.base/java.io.InputStreamReader.read(InputStreamReader.java:177)
    java.base/java.io.BufferedReader.fill(BufferedReader.java:162)
    java.base/java.io.BufferedReader.readLine(BufferedReader.java:329)
    java.base/java.io.BufferedReader.readLine(BufferedReader.java:396)
    org.rzo.yajsw.wrapper.AbstractWrappedProcess$Gobler.run(AbstractWrappedProcess.java:3281)
    java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    java.base/java.lang.Thread.run(Thread.java:840)
    gobler terminated ERROR 6256
    set state RESTART_WAIT->RESTART_START
    starting Process
    reloaded configuration
    reloading cache </init></init></init></init></init></init></clinit></clinit></clinit></init></init></init></init></init></clinit></clinit></clinit>

     

    Last edit: xiyz 2025-09-30
  • rzo

    rzo - 2025-10-05

    release 13.18

     
  • rzo

    rzo - 2025-10-05
    • status: open --> closed-fixed
     
  • xiyz

    xiyz - 2025-10-08

    Thank you. My app started normally, and the issue was fixed in release 13.18

     

Log in to post a comment.