ClassNotFoundException : Com.Sun.Jersey.Spi.Container.Servlet.ServletContainer解决

本文解决了一个使用Jersey开发REST服务时出现的ClassNotFoundException问题,原因是缺少jersey-bundle.jar包。解决方案是将jersey-bundle-1.13.jar添加到项目类路径中。

用Jersey开发REST服务,项目报一错误:ClassNotFoundException : Com.Sun.Jersey.Spi.Container.Servlet.ServletContainer

详情如下:

org.apache.catalina.core.StandardContext loadOnStartup
严重: Servlet /ecloud threw load() exception
java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1136)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1100)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1618)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)


原因:项目缺少jersey-bundle.jar包所致。

解决方法:将jersey-bundle-1.13.jar加入到项目类路径下。(说明,Jersey的各个包应使用同一个版本)


[root@yfw ~]# cd /opt/openfire/lib [root@yfw lib]# # 设置 OPENFIRE_HOME 环境变量 [root@yfw lib]# export OPENFIRE_HOME=/opt/openfire [root@yfw lib]# [root@yfw lib]# # 创建 logs 目录并赋权 [root@yfw lib]# mkdir -p /opt/openfire/logs [root@yfw lib]# chown openfire:openfire /opt/openfire/logs [root@yfw lib]# [root@yfw lib]# # 以 openfire 用户身份启动服务 [root@yfw lib]# su -s /bin/bash -c " > export OPENFIRE_HOME=/opt/openfire && > /usr/lib/jvm/java-17-openjdk/bin/java \ > -cp '/opt/openfire/lib/*:/opt/openfire/lib/startup.jar' \ > org.jivesoftware.openfire.starter.ServerStarter > " openfire Openfire 5.0.2 [2025年11月16日 上午8:49:16] 管理控制台正在侦听: http://0.0.0.0:9090 https://0.0.0.0:9091 Nov 16, 2025 4:49:19 PM com.sun.jersey.api.core.PackagesResourceConfig init INFO: Scanning for root resource and provider classes in the packages: org.jivesoftware.openfire.plugin 16:49:19.309 [PluginMonitorExec-3] ERROR org.jivesoftware.openfire.container.PluginServlet - An unexpected problem occurred while attempting to register servlets for plugin 'org.jivesoftware.openfire.plugin.UserServicePlugin@7dcde417'. java.lang.ExceptionInInitializerError: null at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:375) ~[?:?] at jdk.proxy5.$Proxy86.<clinit>(Unknown Source) ~[?:?] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?] at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?] at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?] at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?] at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1053) ~[?:?] at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1039) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl$26.run(WebApplicationImpl.java:1626) ~[?:?] at java.security.AccessController.doPrivileged(AccessController.java:318) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl.createProxy(WebApplicationImpl.java:1623) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl.<init>(WebApplicationImpl.java:335) ~[?:?] at com.sun.jersey.server.impl.container.WebApplicationProviderImpl.createWebApplication(WebApplicationProviderImpl.java:55) ~[?:?] at com.sun.jersey.spi.container.WebApplicationFactory.createWebApplication(WebApplicationFactory.java:66) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.create(ServletContainer.java:412) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.create(ServletContainer.java:327) ~[?:?] at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:603) ~[?:?] at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) ~[?:?] at javax.servlet.GenericServlet.init(GenericServlet.java:180) ~[jetty-servlet-api-4.0.6.jar:?] at org.jivesoftware.openfire.plugin.JerseyWrapper.init(JerseyWrapper.java:83) ~[?:?] at org.jivesoftware.openfire.container.PluginServlet.registerServlets(PluginServlet.java:193) ~[xmppserver-5.0.2.jar:5.0.2] at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:628) ~[xmppserver-5.0.2.jar:5.0.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask.lambda$run$3(PluginMonitor.java:354) ~[xmppserver-5.0.2.jar:5.0.2] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at java.lang.Thread.run(Thread.java:833) [?:?] Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:122) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] ... 31 more Caused by: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl at java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?] at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:375) ~[?:?] at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:62) ~[?:?] at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:155) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:105) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] ... 31 more
最新发布
11-17
[root@yfw ~]# cd /opt/openfire [root@yfw openfire]# systemctl restart openfire [root@yfw openfire]# tail -f /opt/openfire/logs/openfire.log 2025.10.03 02:45:29.930 INFO [shutdown-thread-0]: org.jivesoftware.openfire.spi.ConnectionListener[component-directTLS] - Stopped. 2025.10.03 02:45:29.935 INFO [shutdown-thread-0]: org.jivesoftware.openfire.spi.NettyConnectionAcceptor[connection_manager] - Closing channel [id: 0x243ebdba, L:/0:0:0:0:0:0:0:0:5262] 2025.10.03 02:45:29.966 INFO [shutdown-thread-0]: org.jivesoftware.openfire.spi.ConnectionListener[connection_manager] - Stopped. 2025.10.03 02:45:29.968 INFO [shutdown-thread-0]: org.jivesoftware.openfire.spi.NettyConnectionAcceptor[connection_manager_ssl] - Closing channel [id: 0xf6262486, L:/0:0:0:0:0:0:0:0:5263] 2025.10.03 02:45:29.979 INFO [shutdown-thread-0]: org.jivesoftware.openfire.spi.ConnectionListener[connection_manager-directTLS] - Stopped. 2025.10.03 02:45:29.979 INFO [shutdown-thread-0]: org.jivesoftware.openfire.http.HttpSessionManager - Stopping instance 2025.10.03 02:45:29.985 INFO [shutdown-thread-0]: org.jivesoftware.openfire.http.HttpBindManager - HTTP bind service stopped 2025.10.03 02:45:29.991 INFO [shutdown-thread-0]: org.jivesoftware.openfire.pubsub.DefaultPubSubPersistenceProvider - Flushing write cache to database 2025.10.03 02:45:29.996 INFO [shutdown-thread-0]: org.jivesoftware.openfire.OfflineMessageStore - Offline message cleaning - Stop old timer if started 2025.10.03 02:45:30.011 INFO [Thread-2]: org.jivesoftware.openfire.XMPPServer - Openfire stopped 2025.10.03 02:45:31.683 INFO [main]: org.jivesoftware.openfire.XMPPServer - Registering shutdown hook (standalone mode) 2025.10.03 02:45:32.162 INFO [main]: org.jivesoftware.util.cache.ConsistencyMonitor - Applying configuration for cache consistency check. Enabled: false 2025.10.03 02:45:32.180 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Servers Cache 2025.10.03 02:45:32.181 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Components Cache 2025.10.03 02:45:32.181 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Users Cache 2025.10.03 02:45:32.181 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing AnonymousUsers Cache 2025.10.03 02:45:32.181 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing User Sessions 2025.10.03 02:45:32.186 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Roster 2025.10.03 02:45:32.188 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for RosterItems 2025.10.03 02:45:32.216 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Result Listeners 2025.10.03 02:45:32.222 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Multicast Service 2025.10.03 02:45:32.229 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Offline Message Size 2025.10.03 02:45:32.233 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for VCard 2025.10.03 02:45:32.359 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Privacy Lists 2025.10.03 02:45:32.360 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for File Transfer Cache 2025.10.03 02:45:32.436 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Offline Presence Cache 2025.10.03 02:45:32.437 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Last Activity Cache 2025.10.03 02:45:32.452 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for User 2025.10.03 02:45:32.452 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Remote Users Existence 2025.10.03 02:45:32.493 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Components Sessions 2025.10.03 02:45:32.493 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Connection Managers Sessions 2025.10.03 02:45:32.493 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Incoming Server Session Info Cache 2025.10.03 02:45:32.493 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Sessions by Hostname 2025.10.03 02:45:32.493 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Client Session Info Cache 2025.10.03 02:45:32.494 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Directed Presences 2025.10.03 02:45:32.513 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for PEPServiceManager 2025.10.03 02:45:32.514 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for File Transfer 2025.10.03 02:45:32.520 INFO [main]: org.jivesoftware.openfire.pubsub.PubSubPersistenceProviderManager - Loading PubSub persistence provider: class org.jivesoftware.openfire.pubsub.CachingPubsubPersistenceProvider. 2025.10.03 02:45:32.526 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Published Items 2025.10.03 02:45:32.526 INFO [main]: org.jivesoftware.openfire.pubsub.CachingPubsubPersistenceProvider - Loading PubSub persistence provider to delegate to: class org.jivesoftware.openfire.pubsub.DefaultPubSubPersistenceProvider. 2025.10.03 02:45:32.535 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Default Node Configurations 2025.10.03 02:45:32.563 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Disco Server Features 2025.10.03 02:45:32.572 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Disco Server Items 2025.10.03 02:45:32.572 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Components 2025.10.03 02:45:32.807 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Entity Capabilities 2025.10.03 02:45:32.807 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Entity Capabilities Users 2025.10.03 02:45:32.844 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Group (Shared) Metadata Cache 2025.10.03 02:45:32.845 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Group 2025.10.03 02:45:32.845 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Group Metadata Cache 2025.10.03 02:45:32.870 INFO [main]: org.jivesoftware.openfire.pubsub.PubSubModule - 发布–订阅域:pubsub.localhost 2025.10.03 02:45:32.880 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Service Pings Sent 2025.10.03 02:45:32.882 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC History 2025.10.03 02:45:32.884 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Service 'conference' Rooms 2025.10.03 02:45:32.885 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Service 'conference' Room Statistics 2025.10.03 02:45:32.887 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Service 'lobby' Rooms 2025.10.03 02:45:32.887 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Service 'lobby' Room Statistics 2025.10.03 02:45:32.897 INFO [main]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Rescheduling user idle task, recurring every PT15M 2025.10.03 02:45:32.903 INFO [main]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - 多用户聊天域:conference.localhost 2025.10.03 02:45:32.921 INFO [main]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - Rescheduling user idle task, recurring every PT15M 2025.10.03 02:45:32.921 INFO [main]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - 多用户聊天域:lobby.localhost 2025.10.03 02:45:32.954 INFO [main]: org.jivesoftware.openfire.XMPPServer - Openfire 4.9.2 [2025年10月3日 上午2:45:32] 2025.10.03 02:45:33.269 INFO [PluginMonitorTask-2]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for DNS Records 2025.10.03 02:45:33.382 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.EncryptionArtifactFactory - Creating new SslContextFactory instance 2025.10.03 02:45:33.405 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for LDAP UserDN 2025.10.03 02:45:34.183 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'ANONYMOUS' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'CRAM-MD5' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'DIGEST-MD5' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'EXTERNAL' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'GSSAPI' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'JIVE-SHAREDSECRET' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'PLAIN' SASL mechanism. 2025.10.03 02:45:34.184 INFO [main]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'SCRAM-SHA-1' SASL mechanism. 2025.10.03 02:45:34.273 INFO [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Remote Server Configurations 2025.10.03 02:45:34.375 INFO [PluginMonitorTask-2]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Favicon Misses 2025.10.03 02:45:34.376 INFO [PluginMonitorTask-2]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Favicon Hits 2025.10.03 02:45:34.414 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.container.AdminConsolePlugin - 管理控制台正在侦听: http://0.0.0.0:9090 https://0.0.0.0:9091 2025.10.03 02:45:34.418 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'admin'. 2025.10.03 02:45:34.480 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'clientcontrol-2.1.10'. 2025.10.03 02:45:34.523 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'justmarried-1.3.0'. 2025.10.03 02:45:34.548 INFO [PluginMonitorExec-3]: org.igniterealtime.openfire.plugin.mucextinfo.MucExtInfoPlugin - Replacing original IQ Disco Info handlers for all MUC services with proxies. 2025.10.03 02:45:34.558 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'mucextinfo-1.0.0'. 2025.10.03 02:45:34.680 INFO [PluginMonitorExec-3]: uk.ifsoft.openfire.plugins.pade.PadePlugin - start pade server localhost:7443 2025.10.03 02:45:34.681 INFO [PluginMonitorExec-3]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for URL Source Content 2025.10.03 02:45:34.691 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.net.SASLAuthentication - Support added for the 'PADE' SASL mechanism. 2025.10.03 02:45:34.691 INFO [PluginMonitorExec-3]: uk.ifsoft.openfire.plugins.pade.PadePlugin - Create recordings folder 2025.10.03 02:45:34.692 INFO [PluginMonitorExec-3]: uk.ifsoft.openfire.plugins.pade.PadePlugin - Starting Openfire Meetings 2025.10.03 02:45:34.697 INFO [PluginMonitorExec-3]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Room Properties 2025.10.03 02:45:34.816 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.JitsiJvbWrapper - Successfully initialized Jitsi Videobridge. /usr/lib/jvm/java-11-openjdk-11.0.13.0.8-4.el8_5.x86_64/bin/java -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dconfig.file=/opt/openfire/bin/../plugins/pade/classes/jvb/application.conf -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/opt/openfire/bin/../plugins/pade/classes/jvb -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=config -Djava.util.logging.config.file=./logging.properties -Djdk.tls.ephemeralDHKeySize=2048 -cp ./jitsi-videobridge-2.1-SNAPSHOT.jar:./jitsi-videobridge-2.1-SNAPSHOT-jar-with-dependencies.jar org.jitsi.videobridge.MainKt --apis=rest 2025.10.03 02:45:34.833 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.JitsiJicofoWrapper - Initializing Jitsi Focus Component (jicofo)... 2025.10.03 02:45:34.890 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.JitsiJicofoWrapper - allowed external component access 2025.10.03 02:45:34.963 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.JitsiJicofoWrapper - Successfully initialized Jitsi Focus Component (jicofo). /usr/lib/jvm/java-11-openjdk-11.0.13.0.8-4.el8_5.x86_64/bin/java -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dconfig.file=/opt/openfire/bin/../plugins/pade/classes/jicofo/application.conf -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/opt/openfire/bin/../plugins/pade/classes/jicofo -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=config -Djava.util.logging.config.file=./logging.properties -Djdk.tls.ephemeralDHKeySize=2048 -cp ./jicofo-1.1-SNAPSHOT.jar:./jicofo-1.1-SNAPSHOT-jar-with-dependencies.jar org.jitsi.jicofo.Main --host=localhost --port=5275 --domain=localhost --secret=ElaQPVPKh05Zy4pb3Rgrvmm5XFoXVadRneWHyRqr --user_domain=localhost --user_name=focus --user_password=yra84zlHMIbfpL8CQpJDYDz5ODmtQXPpoRVds1WN 2025.10.03 02:45:34.980 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.OfMeetPlugin - Initialized public web socket for /colibri-ws web socket 2025.10.03 02:45:36.908 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.plugin.ofmeet.OfMeetPlugin - OfMeet Plugin - Initialize IQ handler 2025.10.03 02:45:37.023 INFO [PluginMonitorExec-3]: org.quartz.impl.StdSchedulerFactory - Using default implementation for ThreadExecutor 2025.10.03 02:45:37.027 INFO [PluginMonitorExec-3]: org.quartz.simpl.SimpleThreadPool - Job execution threads will use class loader of thread: PluginMonitorExec-3 2025.10.03 02:45:37.091 INFO [PluginMonitorExec-3]: org.quartz.core.SchedulerSignalerImpl - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl 2025.10.03 02:45:37.091 INFO [PluginMonitorExec-3]: org.quartz.core.QuartzScheduler - Quartz Scheduler v.2.3.2 created. 2025.10.03 02:45:37.092 INFO [PluginMonitorExec-3]: org.quartz.simpl.RAMJobStore - RAMJobStore initialized. 2025.10.03 02:45:37.093 INFO [PluginMonitorExec-3]: org.quartz.core.QuartzScheduler - Scheduler meta-data: Quartz Scheduler (v2.3.2) 'DefaultQuartzScheduler' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. Number of jobs executed: 0 Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered. 2025.10.03 02:45:37.093 INFO [PluginMonitorExec-3]: org.quartz.impl.StdSchedulerFactory - Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource file in Quartz package: 'quartz.properties' 2025.10.03 02:45:37.093 INFO [PluginMonitorExec-3]: org.quartz.impl.StdSchedulerFactory - Quartz scheduler version: 2.3.2 2025.10.03 02:45:37.094 INFO [PluginMonitorExec-3]: org.quartz.core.QuartzScheduler - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started. 2025.10.03 02:45:37.096 INFO [PluginMonitorExec-3]: uk.ifsoft.openfire.plugins.pade.PadePlugin - Creating webauthn RelyingParty 2025.10.03 02:45:37.137 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'pade-1.8.4'. 2025.10.03 02:45:37.201 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'presence-1.7.4'. 2025.10.03 02:45:37.299 INFO [PluginMonitorExec-3]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for pushnotification.users 2025.10.03 02:45:37.299 INFO [PluginMonitorExec-3]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for pushnotification.messages 2025.10.03 02:45:37.354 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'pushnotification-1.0.1'. 2025.10.03 02:45:37.366 ERROR [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - An exception occurred while loading plugin 'restapi-plugin': java.lang.NullPointerException: null at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:582) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:380) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:368) [xmppserver-4.9.2.jar:4.9.2] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:829) [?:?] 2025.10.03 02:45:37.449 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'search-1.7.5'. 2025.10.03 02:45:37.501 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'usercreation-1.4.1'. 2025.10.03 02:45:37.559 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'userimportexport-2.8.0'. 2025.10.03 02:45:37.777 ERROR [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginServlet - An unexpected problem occurred while attempting to register servlets for plugin 'org.jivesoftware.openfire.plugin.UserServicePlugin@68e423e1'. java.lang.ExceptionInInitializerError: null at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:315) ~[?:?] at com.sun.proxy.$Proxy24.<clinit>(Unknown Source) ~[?:?] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?] at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?] at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1022) ~[?:?] at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1008) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl$26.run(WebApplicationImpl.java:1626) ~[?:?] at java.security.AccessController.doPrivileged(Native Method) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl.createProxy(WebApplicationImpl.java:1623) ~[?:?] at com.sun.jersey.server.impl.application.WebApplicationImpl.<init>(WebApplicationImpl.java:335) ~[?:?] at com.sun.jersey.server.impl.container.WebApplicationProviderImpl.createWebApplication(WebApplicationProviderImpl.java:55) ~[?:?] at com.sun.jersey.spi.container.WebApplicationFactory.createWebApplication(WebApplicationFactory.java:66) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.create(ServletContainer.java:412) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.create(ServletContainer.java:327) ~[?:?] at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:603) ~[?:?] at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) ~[?:?] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) ~[?:?] at javax.servlet.GenericServlet.init(GenericServlet.java:180) ~[jetty-servlet-api-4.0.6.jar:?] at org.jivesoftware.openfire.plugin.JerseyWrapper.init(JerseyWrapper.java:83) ~[?:?] at org.jivesoftware.openfire.container.PluginServlet.registerServlets(PluginServlet.java:192) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:631) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:380) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:368) [xmppserver-4.9.2.jar:4.9.2] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:829) [?:?] Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:122) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] ... 31 more Caused by: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl at java.net.URLClassLoader.findClass(URLClassLoader.java:476) ~[?:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:589) ~[?:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?] at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:315) ~[?:?] at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:62) ~[?:?] at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:155) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:105) ~[?:?] at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] ... 31 more 2025.10.03 02:45:37.819 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'userservice-2.1.3'. 2025.10.03 02:45:37.947 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'userstatus-1.3.0'. 2025.10.03 02:45:37.990 INFO [PluginMonitorExec-3]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'xmppweb-0.10.3 Release 1'. 2025.10.03 02:45:37.998 INFO [PluginMonitorExec-2]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'jabberbrowsing-1.0.1'. 2025.10.03 02:45:38.528 INFO [PluginMonitorExec-5]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for MUC Extended Service Discovery 2025.10.03 02:45:38.824 INFO [PluginMonitorExec-5]: org.jivesoftware.openfire.fastpath.FastpathPlugin - start webchat 2025.10.03 02:45:38.875 INFO [PluginMonitorExec-5]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'fastpath-4.5.1'. 2025.10.03 02:45:38.943 INFO [PluginMonitorExec-4]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'contentfilter-1.9.0'. 2025.10.03 02:45:38.944 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.container.PluginMonitor - Finished processing all plugins. 2025.10.03 02:45:39.212 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[socket_c2s] - Started. 2025.10.03 02:45:39.228 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[socket_c2s-directTLS] - Started. 2025.10.03 02:45:39.260 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[socket_s2s] - Started. 2025.10.03 02:45:39.283 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[socket_s2s-directTLS] - Started. 2025.10.03 02:45:39.286 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[component] - Started. 2025.10.03 02:45:39.378 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[component-directTLS] - Started. 2025.10.03 02:45:39.441 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[connection_manager] - Started. 2025.10.03 02:45:39.508 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.ConnectionListener[connection_manager-directTLS] - Started. 2025.10.03 02:45:39.513 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.spi.EncryptionArtifactFactory - Creating new SslContextFactory instance 2025.10.03 02:45:39.599 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.http.HttpSessionManager - Starting instance 2025.10.03 02:45:39.922 INFO [PluginMonitorTask-2]: org.jivesoftware.openfire.http.HttpBindManager - HTTP bind service started 2025.10.03 02:45:42.465 INFO [socket_c2s-thread-2]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Locked Out Accounts 2025.10.03 02:45:42.710 INFO [socket_c2s-thread-2]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Sequences 2025.10.03 02:45:59.940 ERROR [PluginMonitorExec-2]: org.jivesoftware.openfire.container.PluginManager - An exception occurred while loading plugin 'restapi-plugin': java.lang.NullPointerException: null at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:582) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:380) [xmppserver-4.9.2.jar:4.9.2] at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask$4.call(PluginMonitor.java:368) [xmppserver-4.9.2.jar:4.9.2] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:829) [?:?]
10-04
[root@yfw ~]# cd /opt/openfire/bin [root@yfw bin]# ./openfire.sh OPENFIRE_HOME is empty, trying to find it OPENFIRE_HOME is set to /opt/openfire Openfire 5.0.2 [2025年11月15日 下午6:50:14] 管理控制台正在侦听: http://0.0.0.0:9090 https://0.0.0.0:9091 Successfully loaded plugin 'admin'. Successfully loaded plugin 'search-1.7.5'. Finished processing all plugins. 缺少 user-status 的数据库架构。正在尝试安装… 数据库更新成功。 Successfully loaded plugin 'userstatus-1.3.0'. Finished processing all plugins. Nov 15, 2025 6:57:12 PM com.sun.jersey.api.core.PackagesResourceConfig init INFO: Scanning for root resource and provider classes in the packages: org.jivesoftware.openfire.plugin Successfully loaded plugin 'userservice-2.1.3'. Finished processing all plugins. Successfully loaded plugin 'usercreation-1.4.1'. Finished processing all plugins. Successfully loaded plugin 'presence-1.7.4'. Finished processing all plugins. Successfully loaded plugin 'restapi-1.12.0'. Finished processing all plugins. ^CHalting server... Server halted [root@yfw bin]# sudo systemctl restart openfire [root@yfw bin]# ./openfire.sh OPENFIRE_HOME is empty, trying to find it OPENFIRE_HOME is set to /opt/openfire Openfire 5.0.2 [2025年11月15日 下午7:03:37] 管理控制台正在侦听: http://0.0.0.0:9090 https://0.0.0.0:9091 Successfully loaded plugin 'admin'. Successfully loaded plugin 'presence-1.7.4'. Successfully loaded plugin 'search-1.7.5'. Successfully loaded plugin 'usercreation-1.4.1'. Successfully loaded plugin 'restapi-1.12.0'. Successfully loaded plugin 'userstatus-1.3.0'. Nov 15, 2025 7:03:40 PM com.sun.jersey.api.core.PackagesResourceConfig init INFO: Scanning for root resource and provider classes in the packages: org.jivesoftware.openfire.plugin Successfully loaded plugin 'userservice-2.1.3'. Finished processing all plugins. ^CHalting server... Server halted [root@yfw bin]# ls -la /opt/openfire/bin/start.sh ls: cannot access '/opt/openfire/bin/start.sh': No such file or directory [root@yfw bin]# ls -l total 20 drwxr-xr-x 3 root root 4096 Sep 16 00:48 extra -rwxr-xr-x 1 root root 5180 Feb 1 1980 openfirectl -rwxr-xr-x 1 root root 5803 Feb 1 1980 openfire.sh [root@yfw bin]# sudo -u openfire /opt/openfire/bin/openfire.sh JAVA_HOME is empty, trying to find it JAVA_HOME is set to /usr/lib/jvm/java-11-openjdk-11.0.13.0.8-4.el8_5.x86_64 OPENFIRE_HOME is empty, trying to find it OPENFIRE_HOME is set to /opt/openfire Error: LinkageError occurred while loading main class org.jivesoftware.openfire.starter.ServerStarter java.lang.UnsupportedClassVersionError: org/jivesoftware/openfire/starter/ServerStarter has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 [root@yfw bin]# ./openfire.sh OPENFIRE_HOME is empty, trying to find it OPENFIRE_HOME is set to /opt/openfire Openfire 5.0.2 [2025年11月15日 下午7:16:21] 管理控制台正在侦听: http://0.0.0.0:9090 https://0.0.0.0:9091 Successfully loaded plugin 'admin'. Successfully loaded plugin 'restapi-1.12.0'. Successfully loaded plugin 'search-1.7.5'. Successfully loaded plugin 'usercreation-1.4.1'. Successfully loaded plugin 'presence-1.7.4'. Successfully loaded plugin 'userstatus-1.3.0'. Nov 15, 2025 7:16:24 PM com.sun.jersey.api.core.PackagesResourceConfig init INFO: Scanning for root resource and provider classes in the packages: org.jivesoftware.openfire.plugin Successfully loaded plugin 'userservice-2.1.3'. Finished processing all plugins. ^CHalting server... Server halted [root@yfw bin]# sudo cat > /etc/systemd/system/openfire.service << 'EOF' > [Unit] > Description=OpenFire XMPP Server > Documentation=https://www.igniterealtime.org/projects/openfire/ > After=network.target > > [Service] > Type=simple > User=openfire > Group=openfire > WorkingDirectory=/opt/openfire > Environment="OPENFIRE_HOME=/opt/openfire" > Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk" > Environment="LANG=en_US.UTF-8" > > ExecStart=/usr/lib/jvm/java-17-openjdk/bin/java \ > -DopenfireHome=/opt/openfire \ > -Dopenfire.lib.dir=/opt/openfire/lib \ > -cp "/opt/openfire/lib/*" \ > org.jivesoftware.openfire.starter.ServerStarter > > ExecStop=/bin/kill -TERM $MAINPID > Restart=on-failure > RestartSec=10 > StandardOutput=journal > StandardError=journal > LimitNOFILE=65536 > TimeoutStopSec=300 > > [Install] > WantedBy=multi-user.target > EOF [root@yfw bin]# sudo cat > /etc/systemd/system/openfire.service << 'EOF' > [Unit] > Description=OpenFire XMPP Server > Documentation=https://www.igniterealtime.org/projects/openfire/ > After=network.target > > [Service] > Type=simple > User=openfire > Group=openfire > WorkingDirectory=/opt/openfire > Environment="OPENFIRE_HOME=/opt/openfire" > Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk" > Environment="LANG=en_US.UTF-8" > > ExecStart=/usr/lib/jvm/java-17-openjdk/bin/java \ > -DopenfireHome=/opt/openfire \ > -Dopenfire.lib.dir=/opt/openfire/lib \ > -cp "/opt/openfire/lib/*" \ > org.jivesoftware.openfire.starter.ServerStarter > > ExecStop=/bin/kill -TERM $MAINPID > Restart=on-failure > RestartSec=10 > StandardOutput=journal > StandardError=journal > LimitNOFILE=65536 > TimeoutStopSec=300 > > [Install] > WantedBy=multi-user.target > EOF [root@yfw bin]# # 重载 systemd 配置 [root@yfw bin]# sudo systemctl daemon-reload [root@yfw bin]# [root@yfw bin]# # 设置开机自启 [root@yfw bin]# sudo systemctl enable openfire [root@yfw bin]# [root@yfw bin]# # 启动服务(后台运行) [root@yfw bin]# sudo systemctl start openfire [root@yfw bin]# [root@yfw bin]# # 查看状态 [root@yfw bin]# sudo systemctl status openfire ● openfire.service - OpenFire XMPP Server Loaded: loaded (/etc/systemd/system/openfire.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2025-11-15 19:21:43 CST; 28ms ago Docs: https://www.igniterealtime.org/projects/openfire/ Main PID: 1272585 (java) Tasks: 10 (limit: 23712) Memory: 8.1M CGroup: /system.slice/openfire.service └─1272585 /usr/lib/jvm/java-17-openjdk/bin/java -DopenfireHome=/opt/openfire -Dopenfire.lib.di> Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: Started OpenFire XMPP Server. [root@yfw bin]# # 实时查看日志 [root@yfw bin]# sudo journalctl -u openfire.service -f -- Logs begin at Fri 2025-11-14 20:42:48 CST. -- Nov 15 19:21:32 yfw.szrengjing.com systemd[1]: openfire.service: Failed with result 'exit-code'. Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: openfire.service: Service RestartSec=10s expired, scheduling restart. Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: openfire.service: Scheduled restart job, restart counter is at 69. Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: Stopped OpenFire XMPP Server. Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: Started OpenFire XMPP Server. Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: 19:21:43.780 [main] ERROR org.jivesoftware.util.JiveGlobals - Error - the user running this application can not read and write to the specified home directory (/opt/openfire). Please grant the executing user read and write permissions. Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: Critical Error! The home directory has not been configured, Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: which will prevent the application from working correctly. Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: Openfire 5.0.2 [Nov 15, 2025, 7:21:43 PM] Nov 15 19:21:45 yfw.szrengjing.com java[1272585]: Admin console listening at http://ecs-124-71-230-244.compute.hwclouds-dns.com:9090 ^C [root@yfw bin]# ps aux | grep openfire openfire 1272585 12.7 5.0 3639436 191888 ? Ssl 19:21 0:05 /usr/lib/jvm/java-17-openjdk/bin/java -DopenfireHome=/opt/openfire -Dopenfire.lib.dir=/opt/openfire/lib -cp /opt/openfire/lib/* org.jivesoftware.openfire.starter.ServerStarter root 1272797 0.0 0.0 12136 1136 pts/0 S+ 19:22 0:00 grep --color=auto openfire [root@yfw bin]# sudo systemctl status openfire ● openfire.service - OpenFire XMPP Server Loaded: loaded (/etc/systemd/system/openfire.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2025-11-15 19:21:43 CST; 1min 29s ago Docs: https://www.igniterealtime.org/projects/openfire/ Main PID: 1272585 (java) Tasks: 35 (limit: 23712) Memory: 161.2M CGroup: /system.slice/openfire.service └─1272585 /usr/lib/jvm/java-17-openjdk/bin/java -DopenfireHome=/opt/openfire -Dopenfire.lib.di> Nov 15 19:21:43 yfw.szrengjing.com systemd[1]: Started OpenFire XMPP Server. Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: 19:21:43.780 [main] ERROR org.jivesoftware.util.JiveGlo> Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: Critical Error! The home directory has not been configu> Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: which will prevent the application from working correct> Nov 15 19:21:43 yfw.szrengjing.com java[1272585]: Openfire 5.0.2 [Nov 15, 2025, 7:21:43 PM] Nov 15 19:21:45 yfw.szrengjing.com java[1272585]: Admin console listening at http://ecs-124-71-230-244.co> [root@yfw bin]# ls -la /opt/openfire/ total 504 drwxr-xr-x 11 root root 4096 Nov 15 18:34 . drwxr-xr-x. 7 root root 4096 Nov 15 18:30 .. drwxr-xr-x 3 root root 4096 Sep 16 00:48 bin -rwxr-xr-x 1 root root 439708 Feb 1 1980 changelog.html drwxr-xr-x 2 root root 4096 Nov 15 19:16 conf drwxr-xr-x 4 root root 4096 Sep 16 00:48 dist drwxr-xr-x 5 root root 4096 Sep 16 00:48 documentation drwxr-xr-x 2 root root 4096 Sep 16 00:48 .install4j drwxr-xr-x 2 root root 12288 Sep 16 00:48 lib -rwxr-xr-x 1 root root 10837 Feb 1 1980 LICENSE.html drwxr-xr-x 2 root root 4096 Nov 15 18:34 logs drwxr-xr-x 9 root root 4096 Nov 15 18:59 plugins -rwxr-xr-x 1 root root 5350 Feb 1 1980 README.html drwxr-xr-x 6 root root 4096 Sep 16 00:48 resources [root@yfw bin]# sudo chown -R openfire:openfire /opt/openfire [root@yfw bin]# sudo chmod -R 755 /opt/openfire [root@yfw bin]# sudo chmod -R 775 /opt/openfire/logs /opt/openfire/conf /opt/openfire/plugins /opt/openfire/embedded-db chmod: cannot access '/opt/openfire/embedded-db': No such file or directory [root@yfw bin]# ls -la /opt/openfire/ total 504 drwxr-xr-x 11 openfire openfire 4096 Nov 15 18:34 . drwxr-xr-x. 7 root root 4096 Nov 15 18:30 .. drwxr-xr-x 3 openfire openfire 4096 Sep 16 00:48 bin -rwxr-xr-x 1 openfire openfire 439708 Feb 1 1980 changelog.html drwxrwxr-x 2 openfire openfire 4096 Nov 15 19:16 conf drwxr-xr-x 4 openfire openfire 4096 Sep 16 00:48 dist drwxr-xr-x 5 openfire openfire 4096 Sep 16 00:48 documentation drwxr-xr-x 2 openfire openfire 4096 Sep 16 00:48 .install4j drwxr-xr-x 2 openfire openfire 12288 Sep 16 00:48 lib -rwxr-xr-x 1 openfire openfire 10837 Feb 1 1980 LICENSE.html drwxrwxr-x 2 openfire openfire 4096 Nov 15 18:34 logs drwxrwxr-x 9 openfire openfire 4096 Nov 15 18:59 plugins -rwxr-xr-x 1 openfire openfire 5350 Feb 1 1980 README.html drwxr-xr-x 6 openfire openfire 4096 Sep 16 00:48 resources [root@yfw bin]# sudo systemctl daemon-reload [root@yfw bin]# sudo systemctl restart openfire [root@yfw bin]# sudo journalctl -u openfire.service -f --since "1 minute ago" -- Logs begin at Fri 2025-11-14 20:42:48 CST. -- Nov 15 19:25:46 yfw.szrengjing.com systemd[1]: Stopping OpenFire XMPP Server... Nov 15 19:25:46 yfw.szrengjing.com java[1272585]: Halting server... Nov 15 19:25:46 yfw.szrengjing.com java[1272585]: Server halted Nov 15 19:25:46 yfw.szrengjing.com systemd[1]: openfire.service: Main process exited, code=exited, status=143/n/a Nov 15 19:25:46 yfw.szrengjing.com systemd[1]: openfire.service: Failed with result 'exit-code'. Nov 15 19:25:46 yfw.szrengjing.com systemd[1]: Stopped OpenFire XMPP Server. Nov 15 19:25:46 yfw.szrengjing.com systemd[1]: Started OpenFire XMPP Server. Nov 15 19:25:48 yfw.szrengjing.com java[1273581]: Openfire 5.0.2 [2025年11月15日 下午7:25:48] Nov 15 19:25:50 yfw.szrengjing.com java[1273581]: 管理控制台正在侦听: Nov 15 19:25:50 yfw.szrengjing.com java[1273581]: http://0.0.0.0:9090 Nov 15 19:25:50 yfw.szrengjing.com java[1273581]: https://0.0.0.0:9091 Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: Nov 15, 2025 7:25:51 PM com.sun.jersey.api.core.PackagesResourceConfig init Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: INFO: Scanning for root resource and provider classes in the packages: Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: org.jivesoftware.openfire.plugin Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: 19:25:51.332 [PluginMonitorExec-5] ERROR org.jivesoftware.openfire.container.PluginServlet - An unexpected problem occurred while attempting to register servlets for plugin 'org.jivesoftware.openfire.plugin.UserServicePlugin@40846186'. Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: java.lang.ExceptionInInitializerError: null Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.Class.forName0(Native Method) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.Class.forName(Class.java:375) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at jdk.proxy5.$Proxy86.<clinit>(Unknown Source) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1053) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1039) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.server.impl.application.WebApplicationImpl$26.run(WebApplicationImpl.java:1626) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.security.AccessController.doPrivileged(AccessController.java:318) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.server.impl.application.WebApplicationImpl.createProxy(WebApplicationImpl.java:1623) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.server.impl.application.WebApplicationImpl.<init>(WebApplicationImpl.java:335) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.server.impl.container.WebApplicationProviderImpl.createWebApplication(WebApplicationProviderImpl.java:55) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.WebApplicationFactory.createWebApplication(WebApplicationFactory.java:66) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.ServletContainer.create(ServletContainer.java:412) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.create(ServletContainer.java:327) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:603) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.servlet.GenericServlet.init(GenericServlet.java:180) ~[jetty-servlet-api-4.0.6.jar:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at org.jivesoftware.openfire.plugin.JerseyWrapper.init(JerseyWrapper.java:83) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at org.jivesoftware.openfire.container.PluginServlet.registerServlets(PluginServlet.java:193) ~[xmppserver-5.0.2.jar:5.0.2] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java:628) ~[xmppserver-5.0.2.jar:5.0.2] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at org.jivesoftware.openfire.container.PluginMonitor$MonitorTask.lambda$run$3(PluginMonitor.java:354) ~[xmppserver-5.0.2.jar:5.0.2] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.Thread.run(Thread.java:833) [?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:122) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: ... 31 more Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: Caused by: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.ClassLoader.loadClass(ClassLoader.java:587) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.Class.forName0(Native Method) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at java.lang.Class.forName(Class.java:375) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:62) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:155) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:105) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: at javax.ws.rs.core.EntityTag.<clinit>(EntityTag.java:35) ~[?:?] Nov 15 19:25:51 yfw.szrengjing.com java[1273581]: ... 31 more
11-16
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值