手动更新jar包内容报错

前言

class文件和内部引用jar包同时需要更新。

报错信息

2020-10-20 15:15:14.108 WARN  [localhost-startStop-1] org.apache.catalina.loader.WebappClassLoaderBase.log:180 -The web appli
cation [ROOT] appears to have started a thread named [RxIoScheduler-1 (Evictor)] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method)
 java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
 java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
 java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
 java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
 java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 java.lang.Thread.run(Thread.java:748)

原因分析及测试

经测试必须先更新内部引用jar,更新完成后再更新class文件,不然更新顺序颠倒或会导致启动失败。

上一篇:SpringBoot—自定义线程池及并发定时任务模板


下一篇:Concurrent iHawk — 实时并行计算机仿真系统