我有一个tomcat服务器,希望在其上安装Jenkins和Sonar。我正在进行debian发行,因此我通过apt- get获得了tomcat6和Jenkins。当我将jenkins.war复制到tomcat6 / webapps目录时,一切运行正常。但是,当我将sonar.war复制到tomcat6 / webapps时,声纳工作正常,但是jenkins抛出错误500:
javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: jar:file:/var/lib/tomcat6/webapps/jenkins/WEB-INF/lib/jenkins-core-1.435.jar!/hudson/model/View/index.jelly:39:43: <st:include> PermGen space org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112) org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:124) org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:550) org.kohsuke.stapler.Stapler.invoke(Stapler.java:646) org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:612) org.kohsuke.stapler.Stapler.invoke(Stapler.java:646) org.kohsuke.stapler.Stapler.invoke(Stapler.java:477) org.kohsuke.stapler.Stapler.service(Stapler.java:159) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
我还安装了管理器(tomcat6-admin),当我添加sonar.war时,管理器也失败了。
我已经通过从codehaus下载声纳,设置数据库配置并建立战争来安装了声纳。
有谁知道为什么会这样并且有解决方案?
您的例外情况是:
PermGen space org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112)
permgen有问题:
当JVM永久生成堆中的空间不足时,会发生此错误
要修复该错误,您需要将-XX:MaxPermSize=<Y>m(<Y>所需的内存放在)CATALINA_OPTS环境变量中。
-XX:MaxPermSize=<Y>m
<Y>
您如何实现的?遵循本文(例如):
如何增加应用服务器中的内存?