【问题标题】:ClassNotFoundException: org/springframework/context/support/LiveBeansView exception is thrown repeatedly in STSClassNotFoundException: org/springframework/context/support/LiveBeansView 异常在 STS 中反复抛出
【发布时间】:2021-08-17 20:03:31
【问题描述】:

我正在 STS 中从事 jhipster 项目。当我在 STS 中将应用程序作为 Spring Boot 应用程序启动时,我收到以下异常日志。

2021-05-30 10:57:14.057 调试 13228 --- [on(3)-127.0.0.1] javax.management.mbeanserver :异常调用 isInstanceOf

java.lang.ClassNotFoundException: org/springframework/context/support/LiveBeansView 在 java.base/java.lang.Class.forName0(本机方法) 在 java.base/java.lang.Class.forName(Class.java:427) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.isInstanceOf(DefaultMBeanServerInterceptor.java:1394) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.isInstanceOf(JmxMBeanServer.java:1091) 在 java.management/javax.management.InstanceOfQueryExp.apply(InstanceOfQueryExp.java:107) 在 java.management/javax.management.OrQueryExp.apply(OrQueryExp.java:97) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.objectNamesFromFilteredNamedObjects(DefaultMBeanServerInterceptor.java:1496) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNamesImpl(DefaultMBeanServerInterceptor.java:560) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNames(DefaultMBeanServerInterceptor.java:550) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.queryNames(JmxMBeanServer.java:619) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1485) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.queryNames(RMIConnectionImpl.java:570) 在 java.base/jdk.internal.reflect.GeneratedMethodAccessor294.invoke(未知来源) 在 java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.base/java.lang.reflect.Method.invoke(Method.java:564) 在 java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:691) 在 java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:391) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704) 在 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) 在 java.base/java.lang.Thread.run(Thread.java:832)

2021-05-30 10:57:14.057 DEBUG 13228 --- [on(3)-127.0.0.1] javax.management.mbeanserver:异常调用 isInstanceOf

java.lang.ClassNotFoundException: org/springframework/boot/actuate/endpoint/jmx/EndpointMBean 在 java.base/java.lang.Class.forName0(本机方法) 在 java.base/java.lang.Class.forName(Class.java:427) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.isInstanceOf(DefaultMBeanServerInterceptor.java:1394) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.isInstanceOf(JmxMBeanServer.java:1091) 在 java.management/javax.management.InstanceOfQueryExp.apply(InstanceOfQueryExp.java:107) 在 java.management/javax.management.OrQueryExp.apply(OrQueryExp.java:97) 在 java.management/javax.management.OrQueryExp.apply(OrQueryExp.java:97) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.objectNamesFromFilteredNamedObjects(DefaultMBeanServerInterceptor.java:1496) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNamesImpl(DefaultMBeanServerInterceptor.java:560) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNames(DefaultMBeanServerInterceptor.java:550) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.queryNames(JmxMBeanServer.java:619) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1485) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.queryNames(RMIConnectionImpl.java:570) 在 java.base/jdk.internal.reflect.GeneratedMethodAccessor294.invoke(未知来源) 在 java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.base/java.lang.reflect.Method.invoke(Method.java:564) 在 java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:691) 在 java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:391) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704) 在 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) 在 java.base/java.lang.Thread.run(Thread.java:832)

2021-05-30 10:57:14.057 调试 13228 --- [on(3)-127.0.0.1] javax.management.mbeanserver :异常调用 isInstanceOf

java.lang.ClassNotFoundException: org/springframework/boot/actuate/endpoint/jmx/DataEndpointMBean 在 java.base/java.lang.Class.forName0(本机方法) 在 java.base/java.lang.Class.forName(Class.java:427) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.isInstanceOf(DefaultMBeanServerInterceptor.java:1394) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.isInstanceOf(JmxMBeanServer.java:1091) 在 java.management/javax.management.InstanceOfQueryExp.apply(InstanceOfQueryExp.java:107) 在 java.management/javax.management.OrQueryExp.apply(OrQueryExp.java:97) 在 java.management/javax.management.OrQueryExp.apply(OrQueryExp.java:97) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.objectNamesFromFilteredNamedObjects(DefaultMBeanServerInterceptor.java:1496) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNamesImpl(DefaultMBeanServerInterceptor.java:560) 在 java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.queryNames(DefaultMBeanServerInterceptor.java:550) 在 java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.queryNames(JmxMBeanServer.java:619) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1485) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399) 在 java.management.rmi/javax.management.remote.rmi.RMIConnectionImpl.queryNames(RMIConnectionImpl.java:570) 在 java.base/jdk.internal.reflect.GeneratedMethodAccessor294.invoke(未知来源) 在 java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.base/java.lang.reflect.Method.invoke(Method.java:564) 在 java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200) 在 java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:691) 在 java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705) 在 java.base/java.security.AccessController.doPrivileged(AccessController.java:391) 在 java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704) 在 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) 在 java.base/java.lang.Thread.run(Thread.java:832)

但如果我在命令提示符下启动应用程序,则没有例外。这让我想知道这是否是 STS 中的一个问题。谁能帮忙?

【问题讨论】:

  • 你能添加一个示例项目的链接吗?

标签: spring spring-boot jhipster spring-tool-suite sts


【解决方案1】:

这些是 DEBUG 日志语句,与 JMX 相关,因此您可以通过在 logback-spring.xml 中的“javax.management”上将日志级别设置为 WARN 或 INFO 来安全地忽略它们

<logger name="javax.management" level="WARN"/>

只是 MBean 服务器尝试实例化一些类,看看它是否必须通过 JMX 公开它们,如果缺少该类,这不是问题。

为什么在 STS 中有所不同?我不知道,但可能是 STS 以不同方式配置日志记录。不幸的是,STS 或普通 Eclipse 并没有在 JHipster 社区中广泛使用。

【讨论】:

  • 这很好..谢谢。 “不幸的是,STS 或普通的 Eclipse 在 JHipster 社区中并未广泛使用。”那么哪个 ide 适合 jhipster 呢?
  • 最常用的是 IntelliJ IDEA Community Edition 或者 Ultimate Edition。
猜你喜欢
  • 2014-04-15
  • 2013-04-06
  • 1970-01-01
  • 2017-06-03
  • 1970-01-01
  • 2017-02-19
  • 2021-05-28
  • 1970-01-01
  • 2015-05-01
相关资源
最近更新 更多