Error content:
ERROR: transport error 202: bind failed: Address already in use: JVM_Bind Listening for transport dt_socket at addres
The cause of the error is obviously port occupation, but I have clearly changed the app_servers in the resin.properties file to a different port.
The reason
The reason is that I modified the jvm_args in the resin.properties file of one of the resins before in order to allow idea to debug the resin service remotely.
Original content
jvm_args : -Xmx4000m -Xms4000m -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:-OmitStackTraceInFastThrow -XX:+UseParNewGC -XX:+DisableExplicitGC -javaagent:wagent.jar -javaagent:stophotdeploy.jar -Djdk.tls.ephemeralDHKeySize=2048 -Dfile.encoding=GBK -javaagent:rasp/rasp.jar
I changed it to
jvm_args : -Xdebug -Xrunjdwp:transport=dt_socket,address=9081,server=y,suspend=n -Dcom.sun.management.jmxremote -Xloggc:/var/log/resin_gc.log
The other resin service still keeps the original content, so the two services cannot be started, and an error will be reported that the address port is occupied.
Solution:
The solution is to configure address= for both resins and set the port differently, or use the original default jvm_args.
Here use the method of configuring address= for both.
The first file.
jvm_args : -Xdebug -Xrunjdwp:transport=dt_socket,address=9081,server=y,suspend=n -Dcom.sun.management.jmxremote -Xloggc:/var/log/resin_gc.log
Second file
jvm_args : -Xdebug -Xrunjdwp:transport=dt_socket,address=9082,server=y,suspend=n -Dcom.sun.management.jmxremote -Xloggc:/var/log/resin_gc.log