resin-pro-4.0.53报错java.lang.Error: java.lang.ClassNotFoundException: com.caucho.loader.SystemClassLoader
最初并未发现,笔者的系统环境变量 JAVA_HOME 变量设置错误
D:\develop\Java\x64\jdk1.8.0_144 #最初使用了阉割版的 JDK
改成完整安装的 JDK就可以
D:\develop\Java\jdk1.8.0_144
另外还有设置 RESIN_HOME 环境变量
RESIN_HOME=D:\develop\resin-pro-4.0.53
设置环境变量
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%RESIN_HOME%\lib\resin.jar;%RESIN_HOME%\lib\javamail-141.jar
网上说要把 lib 目录下所有 jar 加进去,即使 JAVA_HOME 设置正确, 不加仍旧保持
缺少 %RESIN_HOME%\lib\resin.jar; 报错
Error occurred during initialization of VM java.lang.Error: java.lang.ClassNotFoundException: com.caucho.loader.SystemClassLoader at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1469) at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1436) Caused by: java.lang.ClassNotFoundException: com.caucho.loader.SystemClassLoaderat java</span>.<span style="color: rgba(0, 0, 255, 1)">net</span>.URLClassLoader.findClass(URLClassLoader.java:381)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.ClassLoader.loadClass(ClassLoader.java:424)<span style="color: rgba(0, 0, 0, 1)"> at sun</span>.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.ClassLoader.loadClass(ClassLoader.java:357)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.Class.forName0(Native Method)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.Class.forName(Class.java:348)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.SystemClassLoaderAction.<span style="color: rgba(0, 0, 255, 1)">run</span>(ClassLoader.java:2209)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.SystemClassLoaderAction.<span style="color: rgba(0, 0, 255, 1)">run</span>(ClassLoader.java:2195)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.security.AccessController.doPrivileged(Native Method)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1456)<span style="color: rgba(0, 0, 0, 1)"> at java</span>.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1436)</pre>
缺少 %RESIN_HOME%\lib\javamail-141.jar 报错:
file:/d:/develop/resin-pro-4.0.53/conf/health.xml:723: com.caucho.config.core.ResinIf.init(): java.lang.NoClassDefFoundError: javax/mail/Session
721: - Automatic PDF reports
722: -->
723: <resin:if test="${pdf_summary}">
724: <health:PdfReport>
725: <path>${resin.root}/doc/admin/pdf-gen.php</path>
at com</span>.caucho.config.xml.XmlConfigContext.error(XmlConfigContext.java:1244)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:471)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureAttribute(XmlConfigContext.java:324)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.program.NodeBuilderChildProgram.inject(NodeBuilderChildProgram.java:82)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.program.ContainerProgram.inject(ContainerProgram.java:88)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.program.ConfigProgram.configure(ConfigProgram.java:107)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.core.ResinIf.init(ResinIf.java:71)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<span style="color: rgba(0, 0, 0, 1)">
at java</span>.lang.reflect.Method.invoke(Method.java:498)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.j2ee.PostConstructProgram.inject(PostConstructProgram.java:140)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.<span style="color: rgba(0, 0, 255, 1)">type</span>.InlineBeanType.init(InlineBeanType.java:458)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureChildBean(XmlConfigContext.java:705)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:686)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:464)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureNode(XmlConfigContext.java:371)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureBean(XmlConfigContext.java:285)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.Config.configureBean(Config.java:376)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.Config.configureBean(Config.java:342)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.core.ResinImport.initImpl(ResinImport.java:176)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.core.ResinImport.init(ResinImport.java:107)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<span style="color: rgba(0, 0, 0, 1)">
at sun</span>.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<span style="color: rgba(0, 0, 0, 1)">
at java</span>.lang.reflect.Method.invoke(Method.java:498)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.j2ee.PostConstructProgram.inject(PostConstructProgram.java:140)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.<span style="color: rgba(0, 0, 255, 1)">type</span>.InlineBeanType.init(InlineBeanType.java:458)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureChildBean(XmlConfigContext.java:705)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:686)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:464)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureNode(XmlConfigContext.java:371)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configureBean(XmlConfigContext.java:285)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.xml.XmlConfigContext.configure(XmlConfigContext.java:243)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.Config.configure(Config.java:324)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.config.Config.configure(Config.java:254)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.server.resin.BootConfig.configureFile(BootConfig.java:132)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.server.resin.Resin.configureFile(Resin.java:1036)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.server.resin.Resin.<init>(Resin.java:251)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.server.resin.Resin.<init>(Resin.java:183)<span style="color: rgba(0, 0, 0, 1)">
at com</span>.caucho.server.resin.Resin.main(Resin.java:1465)<span style="color: rgba(0, 0, 0, 1)">
Caused by: com.caucho.config.ConfigException: com.caucho.config.core.ResinIf.init(): java.lang.NoClassDefFoundError: javax/mail/Session
at com.caucho.config.ConfigException.create(ConfigException.java:102)
at com.caucho.config.ConfigException.create(ConfigException.java:130)
at com.caucho.config.j2ee.PostConstructProgram.inject(PostConstructProgram.java:142)
at com.caucho.config.type.InlineBeanType.init(InlineBeanType.java:458)
at com.caucho.config.xml.XmlConfigContext.configureChildBean(XmlConfigContext.java:705)
at com.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:686)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:464)
... 39 more
Caused by: java.lang.NoClassDefFoundError: javax/mail/Session
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.getDeclaredMethods(Class.java:1975)
at com.caucho.config.reflect.ReflectionAnnotatedType.introspectMethods(ReflectionAnnotatedType.java:260)
at com.caucho.config.reflect.ReflectionAnnotatedType.introspect(ReflectionAnnotatedType.java:212)
at com.caucho.config.reflect.ReflectionAnnotatedType.introspect(ReflectionAnnotatedType.java:193)
at com.caucho.config.reflect.ReflectionAnnotatedType.getMethods(ReflectionAnnotatedType.java:152)
at com.caucho.config.reflect.AnnotatedTypeImpl.getMethods(AnnotatedTypeImpl.java:132)
at com.caucho.config.xml.XmlBeanConfig.<init>(XmlBeanConfig.java:130)
at com.caucho.config.xml.XmlBeanAttribute.create(XmlBeanAttribute.java:139)
at com.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:677)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:464)
at com.caucho.config.xml.XmlConfigContext.configureAttribute(XmlConfigContext.java:324)
at com.caucho.config.program.NodeBuilderChildProgram.inject(NodeBuilderChildProgram.java:82)
at com.caucho.config.program.ContainerProgram.inject(ContainerProgram.java:88)
at com.caucho.config.program.ConfigProgram.configure(ConfigProgram.java:107)
at com.caucho.config.core.ResinIf.init(ResinIf.java:71)
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 com.caucho.config.j2ee.PostConstructProgram.inject(PostConstructProgram.java:140)
... 43 more
Caused by: java.lang.ClassNotFoundException: javax.mail.Session
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 65 more
file:/d:/develop/resin-pro-4.0.53/conf/health.xml:723: com.caucho.config.core.ResinIf.init(): java.lang.NoClassDefFoundError: javax/mail/Session
721: - Automatic PDF reports
722: -->
723: <resin:if test="${pdf_summary}">
724: <health:PdfReport>
725: <path>${resin.root}/doc/admin/pdf-gen.php</path>
当然如果你的 resin 启动还报错,请根据出错类所在包添加到 %resin_home%\lib\ 目录
在 linux 下,专业版还有以下两种启动参数
IV) PDF Reports
---------------
With Resin-Pro, you can get a PDF snapshot report of the server with the
command-line:
unix</span>> bin/resin.<span style="color: rgba(0, 0, 0, 1)">sh pdf-report #生成pdf报告
You can also get a watchdog restart report with the -watchdog option
unix</span>> bin/resin.sh pdf-report -watchdog</pre>