SonarQube6.7启动后自动关闭

解决方法:修改了虚拟机的启动内存,具体解决过程如下

 

今天在虚拟机上安装SonarQube6.7的时候遇到了启动后自动关闭的问题。在网上查询后大多数的问题都是出在了启动的用户上。

SonarQube不支持用root用户启动,于是我为其配置好了sonar用户,并且用新用户对其进行启动。

SonarQube6.7启动后自动关闭

 

 

 但是还是出现了闪退的情况。于是我去检查的配置文件中的数据库信息配置。用数据库的配置去访问数据库并没有出现任何问题

SonarQube6.7启动后自动关闭

 

 

查询数据库中sonar使用的数据库查看是否有数据,发现数据库的信息已经创建好了,由此可以证明数据库方面并没有出现问题。

SonarQube6.7启动后自动关闭

 

 

 然后我们通过命令再次启动sonar留意其的启动信息log,此时发现我们报错了个异常

su sonar ./bin/linux-x86-64/sonar.sh console

SonarQube6.7启动后自动关闭

 

 

 

ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...

可以看到Log4j2包找不到了。于是我以为项目启动不了是因为log4j2包缺失,于是去网上搜索了关键字查找问题的解决方案

 网上的解决方案如下:

SonarQube6.7启动后自动关闭

 

大致意思是该人将下面的两个包copy到了sonarqube的工作路径下的lib包下,然后解决了确实包的问题。

log4j-api    log4j-core

于是我下载后存入了lib包下

SonarQube6.7启动后自动关闭

 

 此时发现启动的时候不会报错确实包的问题了,但还是会有闪退的问题,在输入启动代码后有那么一小段时间是可以访问到9000端口的。但是再次刷新就访问不到了。

这给了我一些希望,此时我想到我的虚拟机内存设置了2,但是在虚拟机中启动了k8s和jenkins和mysql等等许多的工具。出现闪退问题有可能是因为内存的问题。

于是我将虚拟机的内存提高到了4内存,重启虚拟机后再次去启动sonar发现可以访问了

SonarQube6.7启动后自动关闭

 

重启虚拟机后再次去启动sonar发现可以访问了

 

SonarQube6.7启动后自动关闭

 

 

 

 

 

上一篇:Day05 数据类型(上)


下一篇:Sonar代码质量管理