在 Tomcat 上安装 Sonar 和 Jenkins [英] Installing Sonar and Jenkins on Tomcat

查看:14
本文介绍了在 Tomcat 上安装 Sonar 和 Jenkins的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 tomcat 服务器,我希望在上面安装 Jenkins 和 Sonar.我在 debian distibition,因此我通过 apt-get 获得了 tomcat6 和 Jenkins.当我将 jenkins.war 复制到我的 tomcat6/webapps 目录时,一切运行正常.但是,当我将 sonar.war 复制到 tomcat6/webapps 时,声纳工作正常,但 jenkins 抛出错误 500:

I have a tomcat server and I wish to install Jenkins and Sonar on it. I am on a debian distibution, therefore I got tomcat6 and Jenkins via apt-get. When I copy the jenkins.war to my tomcat6/webapps directory, everything runs fine. However when I copy the sonar.war to tomcat6/webapps, sonar works fine, but jenkins throws an error 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 时,管理器也失败了.

I've also install the manager (tomcat6-admin) and the manager is failing too when i add the sonar.war.

我通过从 codehaus 下载声纳、设置数据库配置和构建战争来安装声纳.

I've installed sonar by downloading it from codehaus, setting the database configuration and building the war.

有谁知道为什么会发生这种情况并可能有解决方案?

Does anyone know why this is happening and might have a solution?

推荐答案

在你的异常中,出现:

PermGen space
org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112) 

permgen 有问题:

There's a problem with the permgen :

当JVM用完永久代堆中的空间时会出现此错误

This error occurs when the JVM runs out of space in the permanent generation heap

要修复错误,您需要将 -XX:MaxPermSize=<Y>m(其中 <Y> 是您想要的内存)放入CATALINA_OPTS 环境变量.

To fix the error, you need to put the -XX:MaxPermSize=<Y>m (where <Y> is the memory you want) in the CATALINA_OPTS environment variable.

你是如何做到这一点的?关注这篇文章(例如):

How do you achieve this ? Follow this article (for example) :

如何增加应用服务器的内存?

这篇关于在 Tomcat 上安装 Sonar 和 Jenkins的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆