Java 执行sonar runner时,错误生成器中的NullPointerException
这不是一个新问题,但在jGit 4.4.1中仍然存在 在通过Jenkins执行sonar runner时,我对一些文件(总共5个)的BuggeGenerator中的NullPointerException有问题 我下载并尝试了最新的jgit版本,以查看错误是否可复制:Java 执行sonar runner时,错误生成器中的NullPointerException,java,git,jgit,Java,Git,Jgit,这不是一个新问题,但在jGit 4.4.1中仍然存在 在通过Jenkins执行sonar runner时,我对一些文件(总共5个)的BuggeGenerator中的NullPointerException有问题 我下载并尝试了最新的jgit版本,以查看错误是否可复制: $/c/Users/ebiesse/Downloads/org.eclipse.jgit.pgm-4.4.1.201607150455-r.sh——版本 jgit版本4.4.1.201607150455-r 它给出了与詹金斯工作相
$/c/Users/ebiesse/Downloads/org.eclipse.jgit.pgm-4.4.1.201607150455-r.sh——版本
jgit版本4.4.1.201607150455-r
它给出了与詹金斯工作相同的根本原因,所以我猜问题出在jgit中:
$ /c/Users/ebiesse/Downloads/org.eclipse.jgit.pgm-4.4.1.201607150455-r.sh blame -w services/document-definition-service-client-impl/src/main/java/com/streamserve/service/client/document/definition/request/GetDocumentDefinitionRequest.java
java.lang.NullPointerException
at org.eclipse.jgit.blame.BlameGenerator.getSourceStart(BlameGenerator.java:870)
at org.eclipse.jgit.blame.BlameResult.loadFrom(BlameResult.java:338)
at org.eclipse.jgit.blame.BlameResult.computeAll(BlameResult.java:240)
at org.eclipse.jgit.blame.BlameResult.computeRange(BlameResult.java:294)
at org.eclipse.jgit.pgm.Blame.run(Blame.java:195)
at org.eclipse.jgit.pgm.TextBuiltin.execute(TextBuiltin.java:199)
at org.eclipse.jgit.pgm.Main.execute(Main.java:246)
at org.eclipse.jgit.pgm.Main.run(Main.java:138)
at org.eclipse.jgit.pgm.Main.main(Main.java:110)
在这个特定的目录中还有3个java文件,它们都很好
- 我能做些什么让失败的文件通过吗
- 吉特回购相当大。如果我把它打包寄出去,有可能只打包一部分吗
Erika这是JGit bugzilla 499543,仍然出现在JGit 4.6.0(SonarQube Git插件1.3)中 这是JGit bugzilla 499543,仍然出现在JGit 4.6.0(SonarQube Git插件1.3)中 我使用最新的JGit 4.11版本和CentOS 7.4运行了命令行测试。 问题基本上仍然存在,但堆栈跟踪明显不同:
$ ../../org.eclipse.jgit.pgm-4.11.0.201803080745-r.sh blame -w \
src/main/java/Package/Name/And/File.java
java.lang.NullPointerException
at org.eclipse.jgit.pgm.Blame.run(Blame.java:193)
at org.eclipse.jgit.pgm.TextBuiltin.execute(TextBuiltin.java:228)
at org.eclipse.jgit.pgm.Main.execute(Main.java:278)
at org.eclipse.jgit.pgm.Main.run(Main.java:166)
at org.eclipse.jgit.pgm.Main.main(Main.java:138)
删除-w选项对结果不再有任何影响。
使用绝对路径而不是相对路径也不会影响结果。我使用最新的JGit 4.11版本和CentOS 7.4运行了命令行测试。 问题基本上仍然存在,但堆栈跟踪明显不同:
$ ../../org.eclipse.jgit.pgm-4.11.0.201803080745-r.sh blame -w \
src/main/java/Package/Name/And/File.java
java.lang.NullPointerException
at org.eclipse.jgit.pgm.Blame.run(Blame.java:193)
at org.eclipse.jgit.pgm.TextBuiltin.execute(TextBuiltin.java:228)
at org.eclipse.jgit.pgm.Main.execute(Main.java:278)
at org.eclipse.jgit.pgm.Main.run(Main.java:166)
at org.eclipse.jgit.pgm.Main.main(Main.java:138)
删除-w选项对结果不再有任何影响。
使用绝对路径而不是相对路径也不会影响结果。能否尝试找出失败文件与后续文件的不同之处?例如,这些新文件是没有历史记录的,还是空的,或者…@Rüdigerrmann我在这里看不到任何模式。只要看看这个特定目录中的文件,它们非常相似,而且非常短,不到40行git日志“显示他们在历史记录中至少有一次签入,但不到7次。失败的版本已经合并了两次,在这两种情况下,两个版本在合并的两个分支中似乎有相同的编辑。它们自2012年以来就没有被编辑过……这是任何一个。在没有作者或提交人的情况下提交失败的文件?你能创建一个存储库来重现问题吗?@Rüdigerhermann使用gitk我可以看到作者和提交人,他们都是为所有提交设置的。创建一个存储库-你对如何做有什么建议吗?你能试着找出失败的文件与成功的文件有什么不同吗?例如,这些新文件是没有历史记录的,还是空的,或者…@Rüdigerrmann我在这里看不到任何模式。只要看看这个特定目录中的文件,它们非常相似,而且非常短,不到40行git日志“显示他们在历史记录中至少有一次签入,但不到7次。失败的版本已经合并了两次,在这两种情况下,两个版本在合并的两个分支中似乎有相同的编辑。它们自2012年以来就没有被编辑过……这是任何一个。在没有作者或提交人的情况下提交失败的文件?你能创建一个存储库来重现问题吗?@Rüdigerhermann使用gitk我可以看到作者和提交人,他们都是为所有提交设置的。创建一个存储库-你对如何做有什么建议吗?