如果我们可以使用没有jar文件的findbug工具作为输入,请建议我!!我正在使用Android手机,其中框架已经定制,所以我不能使用Eclipse来构建我的代码(我不能使用findbug插件来编译)。所以我使用的是findbug GUI。但是当我们创建新项目时,它需要jar文件,java源代码,类档案。但是Android不支持jar文件,我们通常会创建apk。所以我无法为findbugs提供输入。如果您只有java源代码,请任何人都可以建议我如何使用findbugs。提前谢谢。
答案 0 :(得分:1)
Findbugs需要传递字节码才能进行分析。就事实而言,它只能在.class或.jar文件上运行分析。 Findbugs的Eclipse插件足够智能,可以查找输入源文件的类文件进行分析,然后再次在IDE中找到这些类文件的源文件(如果有)并将其标记为结果。除非你深入了解他们的发展细节,否则就是它的欺骗。 如果您没有可用的字节码,它将不适用于您的Android APK。
Vaishali Kulkarni
-Weblayers Inc.
答案 1 :(得分:0)
在它的基本级别,FindBugs使用Java字节码。无论是包含在JAR中,还是包含在目录结构中的.class文件中,它都无关紧要。但是,由于Android(据我所知)不执行Java字节码,而是执行“编译为Dalvik可执行字节码的Java源代码”[1],因此FindBugs无需进行分析。
因此虽然可以在没有Jar文件的情况下使用FindBugs,但它确实需要Java .class文件,因此我认为它不适用于Android APK。但是,如果可以使用Java编译源代码,则需要分析.class文件。
[1]这可能在技术上是不准确的,希望你明白我的意思。