现在项目采用Eclipse+Myeclipse+JBOSS。现在的情况是这样子的,在eclipse下,我部署项目,然后运行,会报错。如下
15:19:02,475 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/DCViewer.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:03,444 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/RefreshServFromMISCByID.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:03,866 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/ViewIt.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:04,257 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/RefreshSPAllServBySPID.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:09,194 INFO [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
15:19:16,835 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=jsp,WebModule=//localhost/jmx-console,J2EEApplication=none,J2EEServer=none
15:19:17,647 ERROR [BaseModelMBean] Exception invoking method addChild
java.lang.OutOfMemoryError: Java heap space
15:19:17,647 ERROR [BaseModelMBean] Exception invoking method init
LifecycleException: Manager has not yet been started
at org.apache.catalina.session.StandardManager.stop(StandardManager.java:659)
15:19:03,444 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/RefreshServFromMISCByID.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:03,866 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/ViewIt.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:04,257 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=/NeedAuthTools/RefreshSPAllServBySPID.jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
15:19:09,194 INFO [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
15:19:16,835 ERROR [Registry] Null component jboss.web:type=JspMonitor,name=jsp,WebModule=//localhost/jmx-console,J2EEApplication=none,J2EEServer=none
15:19:17,647 ERROR [BaseModelMBean] Exception invoking method addChild
java.lang.OutOfMemoryError: Java heap space
15:19:17,647 ERROR [BaseModelMBean] Exception invoking method init
LifecycleException: Manager has not yet been started
at org.apache.catalina.session.StandardManager.stop(StandardManager.java:659)
但是,我直接在JBOSS下运行就没有问题,现在还不知道怎么解决?
这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的。第一次出现这样的的问题以后,引发了其他的问题。在网上一查可能是JAVA的堆栈设置太小的原因。
跟据网上的答案大致有这两种解决方法:
1、设置环境变量
set JAVA_OPTS= -Xms32m -Xmx512m
可以根据自己机器的内存进行更改。
2、java -Xms32m -Xmx800m className
就是在执行JAVA类文件时加上这个参数,其中className是需要执行的确类名。(包括包名)
这个解决问题了。而且执行的速度比没有设置的时候快很多。
如果在测试的时候可能会用Eclispe 这时候就需要在Eclipse ->run -arguments 中的VM arguments 中输入-Xms32m -Xmx800m这个参数就可以了。
后来在Eclilpse中修改了启动参数,在VM arguments 加入了-Xms32m -Xmx800m,问题解决。