bugCreate opened a new issue #3266: skywalking 的 javaagent 会导致URLClassLoader 加载 
jar 包失败
URL: https://github.com/apache/skywalking/issues/3266
 
 
   ### Bug
   版本:6.1.0
   bug 产生日期:2019/08/14
   单机 skywalking apm server
   使用 -javaagnet 方式启动app:java 
-javaagent:./jmx_prometheus_javaagent.jar=9091:./jmx.yml -Xmx256m -Xms256m 
-javaagent:/agent/skywalking-agent.jar -jar app.jar
   
   我的服务中有使用URLClassLoader 加载远端的 jar。使用skywalking 之后 jar 无法加载,停止使用后恢复正常。
   除去敏感信息后的部分异常栈:
   org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name '115cc55c9742bee784d8c6a2ebcce487': Invocation of init method failed; 
nested exception is java.lang.IllegalStateException: zip file closed
   ....
   at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
   at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746)
   at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
   at 
org.springframework.aop.interceptor.AsyncExecutionInterceptor.lambda$invoke$0(AsyncExecutionInterceptor.java:115)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at 
com.yufu.idaas.lcm.kernel.core.util.TaskExecutor$MDCForwardingDecorator.lambda$decorate$0(TaskExecutor.java:65)
   at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
   at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   at java.lang.Thread.run(Thread.java:745)
   Caused by: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name '115cc55c9742bee784d8c6a2ebcce487': Invocation of init 
method failed; nested exception is java.lang.IllegalStateException: zip file 
closed
   at 
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:139)
   at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:419)
   at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1737)
   at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:576)
   at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
   at 
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320)
   at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
   at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
   at 
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1083)
   ...
   Caused by: java.lang.IllegalStateException: zip file closed
   at java.util.zip.ZipFile.ensureOpen(ZipFile.java:669)
   at java.util.zip.ZipFile.getEntry(ZipFile.java:309)
   at java.util.jar.JarFile.getEntry(JarFile.java:240)
   at sun.net.www.protocol.jar.URLJarFile.getEntry(URLJarFile.java:128)
   at java.util.jar.JarFile.getJarEntry(JarFile.java:223)
   at sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:1005)
   at sun.misc.URLClassPath.getResource(URLClassPath.java:212)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:365)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:411)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
   at java.lang.Class.forName0(Native Method)
   at java.lang.Class.forName(Class.java:348)
   ...
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at 
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:363)
   at 
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:307)
   at 
org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
   ... 22 common frames omitted 
   
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to