使用sonar遇到的坑
1.sonar服务使用了几天都没有出错,突然一次启动失败,报错如下:
2020.06.10 18:25:02 WARN app[][o.e.t.n.Netty4Transport] exception caught on transport layer [[id: 0xa3f1175b, L:/127.0.0.1:6979 - R:/127.0.0.1:9001]], closing connection
io.netty.handler.codec.DecoderException: java.io.StreamCorruptedException: invalid internal transport message format, got (48,54,54,50)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:459)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
我这个错误是端口号9001被占用了,我查询到端口被pid=4的system进程占领,再根据https://jingyan.baidu.com/article/870c6fc37678c4b03fe4bef6.html
关闭system进程
2.再次启动还是报错,报错如下:
2020.06.10 21:36:49 WARN app[][o.e.t.n.Netty4Transport] exception caught on transport layer [[id: 0x66015795, L:/127.0.0.1:1305 - R:/127.0.0.1:9001]], closing connection
java.io.IOException: 远程主机强迫关闭了一个现有的连接。
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
这个是因为MySQL的版本低于要求所致,sonar.properties文件中写道:MySQL >=5.6 && <8.0,安装5.6以上版本即可,我因为不用数据库,直接注释掉mysql的配置即可。然后重启电脑再次打开sonar发现成功!