alibaba / druid

阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
https://github.com/alibaba/druid/wiki
Apache License 2.0
27.9k stars 8.57k forks source link

javax.management.InstanceAlreadyExistsException异常的问题 #1200

Closed crab890715 closed 8 years ago

crab890715 commented 8 years ago

在tomcat 7.0下面部署两个项目,两个项目都是使用了druid数据连接池,单独启动一个项目的时候没有问题,把另外一个项目换为别的数据库连接池两个同时启动也没有问题,但是当两个项目放到这同一个tomcat下启动时就会出现下面的错误。 帮忙看一下这个问题:http://www.oschina.net/question/1427693_236304

wenshao commented 8 years ago

什么版本,这个应该早就修复了啊

crab890715 commented 8 years ago

1.0.15,maven最新的1.0.18,没有做本地的中央库,所以直接用的网上的,但刚才用了最新的1.0.18也是存在这个问题的,直接导致jenkins发布失败

crab890715 commented 8 years ago

`org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean [{ CreateTime:"2016-05-05 15:38:10", ActiveCount:0, PoolingCount:0, CreateCount:0, DestroyCount:0, CloseCount:0, ConnectCount:0, Connections:[ ] }

[ ]] with key 'dataSource'; nested exception is javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:625) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.jmx.export.MBeanExporter.registerBeans(MBeanExporter.java:550) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.jmx.export.MBeanExporter.afterSingletonsInstantiated(MBeanExporter.java:432) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.context.web.SpringBootServletInitializer.run(SpringBootServletInitializer.java:149) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:129) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:85) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE] at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175) [spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5573) [catalina.jar:7.0.68] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:7.0.68] at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) [catalina.jar:7.0.68] at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) [catalina.jar:7.0.68] at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) [catalina.jar:7.0.68] at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091) [catalina.jar:7.0.68] at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558) [catalina.jar:7.0.68] at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775) [catalina.jar:7.0.68] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_73] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_73] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_73] at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_73] at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301) [tomcat-coyote.jar:7.0.68] at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) [na:1.8.0_73] at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) [na:1.8.0_73] at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506) [catalina.jar:7.0.68] at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729) [catalina.jar:7.0.68] at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447) [catalina.jar:7.0.68] at javax.servlet.http.HttpServlet.service(HttpServlet.java:653) [servlet-api.jar:na] at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:na] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.68] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.68] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.68] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68] at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) [catalina.jar:7.0.68] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.68] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) [catalina.jar:7.0.68] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.68] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) [catalina.jar:7.0.68] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.68] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.68] at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) [catalina.jar:7.0.68] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.68] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436) [catalina.jar:7.0.68] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078) [tomcat-coyote.jar:7.0.68] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) [tomcat-coyote.jar:7.0.68] at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) [tomcat-coyote.jar:7.0.68] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_73] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_73] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.68] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_73] Caused by: javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437) ~[na:1.8.0_73] at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898) [na:1.8.0_73] at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966) [na:1.8.0_73] at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900) [na:1.8.0_73] at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324) [na:1.8.0_73] at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) [na:1.8.0_73] at org.springframework.jmx.support.MBeanRegistrationSupport.doRegister(MBeanRegistrationSupport.java:195) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.jmx.export.MBeanExporter.registerBeanInstance(MBeanExporter.java:670) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:615) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE] ... 56 common frames omitted

2016-05-05 15:38:13.673 INFO 8886 --- [io-8080-exec-20] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/classes/, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/aopalliance-1.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/beacon-wechat-api-0.0.1-SNAPSHOT.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/beacon-wechat-service-0.0.1-SNAPSHOT.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/classmate-1.1.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-beanutils-1.9.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-codec-1.9.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-collections-3.2.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-io-2.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-lang3-3.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-logging-1.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-pool2-2.4.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/dozer-5.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/druid-1.0.18.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/dubbo-2.5.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/emoji-java-3.0.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/fluent-hc-4.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/gson-2.3.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/guava-19.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/hibernate-validator-5.2.2.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpclient-4.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpcore-4.4.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpmime-4.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-annotations-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-core-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-databind-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/javassist-3.18.1-GA.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jboss-logging-3.3.0.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jcl-over-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jedis-2.8.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jline-0.9.94.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/joda-time-2.9.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/json-20140107.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jstl-1.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jul-to-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/log4j-over-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/logback-classic-1.1.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/logback-core-1.1.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mybatis-3.2.8.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mybatis-spring-1.2.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mysql-connector-java-5.1.6.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/netty-3.2.5.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/slf4j-api-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/snakeyaml-1.16.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-aop-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-beans-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-autoconfigure-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-logging-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-validation-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-web-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-context-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-context-support-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-core-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-data-redis-1.6.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-expression-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-jdbc-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-tx-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-web-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-webmvc-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spymemcached-2.12.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/validation-api-1.1.0.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/weixin-java-common-1.3.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/weixin-java-mp-1.3.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xmlpull-1.1.3.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xpp3_min-1.1.4c.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xstream-1.4.7.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/zkclient-0.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/zookeeper-3.3.3.jar] May 05, 2016 3:38:13 PM org.apache.catalina.core.ContainerBase addChildInternal SEVERE: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/app_test]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775) 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:497) at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729) at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447) at javax.servlet.http.HttpServlet.service(HttpServlet.java:653) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean [{ CreateTime:"2016-05-05 15:38:10", ActiveCount:0, PoolingCount:0, CreateCount:0, DestroyCount:0, CloseCount:0, ConnectCount:0, Connections:[ ] }

[ ]] with key 'dataSource'; nested exception is javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:625) at org.springframework.jmx.export.MBeanExporter.registerBeans(MBeanExporter.java:550) at org.springframework.jmx.export.MBeanExporter.afterSingletonsInstantiated(MBeanExporter.java:432) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) at org.springframework.boot.context.web.SpringBootServletInitializer.run(SpringBootServletInitializer.java:149) at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:129) at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:85) at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5573) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) ... 41 more Caused by: javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324) at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) at org.springframework.jmx.support.MBeanRegistrationSupport.doRegister(MBeanRegistrationSupport.java:195) at org.springframework.jmx.export.MBeanExporter.registerBeanInstance(MBeanExporter.java:670) at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:615) ... 56 more

May 05, 2016 3:38:13 PM org.apache.catalina.startup.HostConfig deployWAR SEVERE: Error deploying web application archive /app/tomcat-7.0-app/webapps/app_test.war java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/app_test]] at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:903) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775) 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:497) at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506) at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729) at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447) at javax.servlet.http.HttpServlet.service(HttpServlet.java:653) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745)

May 05, 2016 3:38:13 PM org.apache.catalina.startup.HostConfig deployWAR INFO: Deployment of web application archive /app/tomcat-7.0-app/webapps/app_test.war has finished in 8,577 ms`

crab890715 commented 8 years ago

我是把相同的项目打了两个包放在同一个tomcat容器里面,但他们的数据源不一样,一个是生产环境的配置一个是测试环境的配置,由于现在机器少,所以暂时放在一起了

wenshao commented 8 years ago

出错堆栈中怎么会没有druid调用栈?

crab890715 commented 8 years ago

这里是启动的日志报错信息: catalina.txt

wenshao commented 8 years ago

这个更应该说是spring的bug,spring将实现了符合MBean规范的beans注册到mbeanserver中,但没处理好异常,所以悲剧了。

crab890715 commented 8 years ago

噢,好的,那我现在了解了,谢谢,我看看

wenshao commented 8 years ago

不过我可以尝试做一些改进,看是否能够自动匹配好

crab890715 commented 8 years ago

那基本上我了解具体问题出在什么地方了,或许我可以暂时寻求另外的途径解决这个问题

crab890715 commented 8 years ago

你好,感谢你的支持,我已经解决了,把spring的自动探测关闭掉了,应用还没有到全局复用对象的时候,即便使用也估计是使用RPC框架,以下是关闭jmx自动探测的spring配置

    <bean class="org.springframework.jmx.export.MBeanExporter">  
        <property name="autodetectModeName">  
            <value>AUTODETECT_NONE</value>  
        </property>  
    </bean> 

Spring提供了4个取值: AUTODETECT_NONE 不启用自动探测,需要手动向MBean Server进行注册,即通过MBeanExporter的beans属性进入注册; AUTODETECT_MBEAN 在当前IOC容器中进行查找MBean组件; AUTODETECT_ASSEMBLER 设置根据MBeanInfoAssembler的策略进行探测; AUTODETECT_ALL 自动探测,是AUTODETECT_MBEAN和AUTODETECT_ASSEMBLER的并集。

wenshao commented 8 years ago

那我关闭啦