网站建设验收内容,注册域名邮箱怎么弄,wordpress获取文章的标签,信阳seo推广最近#xff0c;我有些麻烦#xff0c;试图在我的Grails 2.4.4项目中使用Sonar 5.1。 我使用的是Groovy常用的东西#xff1a; Gmetrics#xff0c;Codenarc和Cobertura 。 对于Sonar数据库#xff0c;我使用的是Postgres 9.4 。 声纳跑步者的日志文件给了我这个#xf… 最近我有些麻烦试图在我的Grails 2.4.4项目中使用Sonar 5.1。 我使用的是Groovy常用的东西 GmetricsCodenarc和Cobertura 。 对于Sonar数据库我使用的是Postgres 9.4 。 声纳跑步者的日志文件给了我这个 build 22-Jun-2015 07:44:30 INFO: ------------------------------------------------------------------------
build 22-Jun-2015 07:44:30 INFO: EXECUTION FAILURE
build 22-Jun-2015 07:44:30 INFO: ------------------------------------------------------------------------
build 22-Jun-2015 07:44:30 Total time: 9.153s
build 22-Jun-2015 07:44:30 Final Memory: 30M/1039M
build 22-Jun-2015 07:44:30 INFO: ------------------------------------------------------------------------
error 22-Jun-2015 07:44:30 ERROR: Error during Sonar runner execution
error 22-Jun-2015 07:44:30 ERROR: Unable to execute Sonar
error 22-Jun-2015 07:44:30 ERROR: Caused by: Unable to save file sources
error 22-Jun-2015 07:44:30 ERROR: Caused by: -1 没什么用 我认为存在一些权限问题因为“无法保存文件源”通常意味着 但是没有权限问题。 然后我禁用了分析的Cobertura部分一切正常因此Cobertura部分出了问题。 然后我 启用详细日志记录— sonar.verbose true 启用了完整堆栈跟踪日志记录—使用-e开关 使用-X开关启用了完整的调试日志记录 这提供了更多线索。 error 22-Jun-2015 11:09:06 ERROR: Error during Sonar runner execution
build 22-Jun-2015 11:09:06 INFO: ------------------------------------------------------------------------
error 22-Jun-2015 11:09:06 org.sonar.runner.impl.RunnerException: Unable to execute Sonar
error 22-Jun-2015 11:09:06 at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91)
error 22-Jun-2015 11:09:06 at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
error 22-Jun-2015 11:09:06 at java.security.AccessController.doPrivileged(Native Method)
error 22-Jun-2015 11:09:06 at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
error 22-Jun-2015 11:09:06 at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
error 22-Jun-2015 11:09:06 at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
error 22-Jun-2015 11:09:06 at org.sonar.runner.api.Runner.execute(Runner.java:100)
error 22-Jun-2015 11:09:06 at org.sonar.runner.Main.executeTask(Main.java:70)
error 22-Jun-2015 11:09:06 at org.sonar.runner.Main.execute(Main.java:59)
error 22-Jun-2015 11:09:06 at org.sonar.runner.Main.main(Main.java:53)
error 22-Jun-2015 11:09:06 Caused by: java.lang.IllegalStateException: Unable to save file sources
error 22-Jun-2015 11:09:06 at org.sonar.batch.index.SourcePersister.persist(SourcePersister.java:84)
error 22-Jun-2015 11:09:06 at org.sonar.batch.phases.DatabaseModePhaseExecutor.executePersisters(DatabaseModePhaseExecutor.java:165)
error 22-Jun-2015 11:09:06 at org.sonar.batch.phases.DatabaseModePhaseExecutor.execute(DatabaseModePhaseExecutor.java:133)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:264)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:235)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:230)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:220)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:57)
error 22-Jun-2015 11:09:06 at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:45)
error 22-Jun-2015 11:09:06 at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:135)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92)
error 22-Jun-2015 11:09:06 at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77)
error 22-Jun-2015 11:09:06 at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:158)
error 22-Jun-2015 11:09:06 at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95)
error 22-Jun-2015 11:09:06 at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67)
error 22-Jun-2015 11:09:06 at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:48)
error 22-Jun-2015 11:09:06 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
error 22-Jun-2015 11:09:06 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
error 22-Jun-2015 11:09:06 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
error 22-Jun-2015 11:09:06 at java.lang.reflect.Method.invoke(Method.java:606)
error 22-Jun-2015 11:09:06 at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87)
error 22-Jun-2015 11:09:06 ... 9 more
error 22-Jun-2015 11:09:06 Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
error 22-Jun-2015 11:09:06 at java.util.ArrayList.elementData(ArrayList.java:371)
error 22-Jun-2015 11:09:06 at java.util.ArrayList.get(ArrayList.java:384)
error 22-Jun-2015 11:09:06 at com.google.protobuf.RepeatedFieldBuilder.getBuilder(RepeatedFieldBuilder.java:245)
error 22-Jun-2015 11:09:06 at org.sonar.server.source.db.FileSourceDb$Data$Builder.getLinesBuilder(FileSourceDb.java:2911)
error 22-Jun-2015 11:09:06 at org.sonar.batch.index.SourceDataFactory. 现在我可以在日志的前面看到Cobertura分析已经完成。 我还可以看到Cobertura coverage.xml生成正常这是整理代码coverage信息的文件。 创建coverage.xml文件之后下一步是让声纳运行器解析该文件并将其发送给Postgres在解析阶段必须出错因为连接到Postgres绝对不是问题记住Cobertura禁用后一切都很好 。 我知道将请求发送到Postgres没问题所以认为coverage.xml文件中一定有一些奇怪的地方这意味着Sonar运行程序无法解析它。 如前所述coverage.xml文件详细说明了每个类的行号已经被覆盖。 样品 class namecom.dublintech.me.ApiLogFilters filenamecom/dublintech/me/ApiLogFilters.groovy line-rate0.0 branch-rate0.0 complexity0.0methodsmethod nameclinit signature()V line-rate0.0 branch-rate1.0linesline number25 hits0 branchfalse/line/lines/method...
/methods/class
... 那么什么样的东西可以使解析桶呢 如果coverage.xml文件中有一些奇数行怎么办 嗯……要检查这一点我运行了以下grep grep line number coverage.xml 这给了太多。 负数行号怎么办 grep line number\\- coverage.xml 不没有 好回到异常看这一行 java.lang.ArrayIndexOutOfBoundsException: -1 hmmm ...如果行号为0我想知道它是否可以在声纳运行器中进行一些数组解析从而使索引超出范围 grep line number\0 coverage.xml 击中 是时候前后grep行并获得有关此文件的更多信息。 grep -C20 line number\0 coverage.xml 这给了我罪魁祸首。 对于我来说Cobertura为什么说行号0的点击率为0毫无意义。 仍然可以打开Cobertura html报告并查看分析。 声纳在解析时只是在f地。 因此通过将以下内容添加到我的构建配置中从Cobertura分析中删除了此文件。 coverage {xml trueexclusions [**/com/dublintech/me/MyOddFile*]
} 然后我重新运行嘿嘿一切正常。 该文件不在coverage.xml文件中。 这意味着Sonar跑步者可以解析文件一切正常。 我喜欢声纳喜欢稳定的构造喜欢快速反馈是的当它再次工作时我是一个快乐的人 翻译自: https://www.javacodegeeks.com/2015/06/problems-with-cobertura-and-sonar-5-1.html