findbugs构造methodGen时出错

问题描述 投票:1回答:1

我和findbugs有一个非常奇怪的问题:

Error constructing methodGen
org.apache.bcel.classfile.ClassFormatException: Invalid method signature: !+Lsome/packag/and/SomeClass
    org.apache.bcel.classfile.Utility.typeOfSignature(Utility.java:1012)
    org.apache.bcel.generic.Type.getType(Type.java:181)
    org.apache.bcel.generic.MethodGen.<init>(MethodGen.java:258)         edu.umd.cs.findbugs.classfile.engine.bcel.MethodGenFactory.analyze(MethodGenFactory.java:90)
    edu.umd.cs.findbugs.classfile.engine.bcel.MethodGenFactory.analyze(MethodGenFactory.java:41)
    edu.umd.cs.findbugs.classfile.impl.AnalysisCache.analyzeMethod(AnalysisCache.java:369)
    edu.umd.cs.findbugs.classfile.impl.AnalysisCache.getMethodAnalysis(AnalysisCache.java:322)
    edu.umd.cs.findbugs.ba.ClassContext.getMethodAnalysis(ClassContext.java:1002)
    edu.umd.cs.findbugs.ba.ClassContext.getMethodAnalysisNoException(ClassContext.java:976)
    edu.umd.cs.findbugs.ba.ClassContext.getMethodGen(ClassContext.java:287)
    edu.umd.cs.findbugs.detect.FindUseOfNonSerializableValue.analyzeMethod(FindUseOfNonSerializableValue.java:126)
    edu.umd.cs.findbugs.detect.FindUseOfNonSerializableValue.visitClassContext(FindUseOfNonSerializableValue.java:94)
    edu.umd.cs.findbugs.DetectorToDetector2Adapter.visitClass(DetectorToDetector2Adapter.java:76)
    edu.umd.cs.findbugs.FindBugs2.analyzeApplication(FindBugs2.java:1089)
    edu.umd.cs.findbugs.FindBugs2.execute(FindBugs2.java:283)
    edu.umd.cs.findbugs.FindBugs.runMain(FindBugs.java:402)
    edu.umd.cs.findbugs.FindBugs2.main(FindBugs2.java:1200)

这个异常来自CI服务器,如果我运行findbugs localy,但如果我从Idea运行findBugs - 一切都很好。

我找到了qazxsw poi,但在目前的项目中我们使用qazxsw poi编译器,新代码没有任何lambda东西。

java findbugs bcel
1个回答
1
投票

但是仍然存在编译器版本(jdk版本)问题。 CI和您本地PC上的JDK版本有什么区别吗?您可以尝试重现在本地PC上添加另一个JDK并运行findbugs的问题。

© www.soinside.com 2019 - 2024. All rights reserved.