请建议我是否可以使用没有 jar 文件作为输入的 findbug 工具!!。我正在使用已定制框架的 Android 手机,所以我不能使用 Eclipse 来构建我的代码(我不能使用 findbug 插件来编译)。所以我正在使用 findbug GUI。但是当我们创建新项目时,它需要 jar 文件、java 源代码、类档案。但是Android不支持jar文件,我们一般都是创建apk。所以我无法为 findbugs 提供输入。当您只有 java 源代码时,任何人都可以建议我如何使用 findbugs。提前致谢。
1647 次
2 回答
1
Findbugs 需要传递字节码进行分析。事实上,它只能在 .class 或 .jar 文件上运行分析。Findbugs 的 Eclipse 插件非常智能,可以找到输入的源文件的类文件进行分析,然后在 IDE 中再次找到这些类文件的源文件(如果有的话)并将它们标记为结果。因此,除非您深入了解他们的发展细节,否则它具有欺骗性。如果您没有可用的字节码,它将不适用于您的 Android APK。
毗湿奴库尔卡尼
-Weblayers Inc.
于 2011-02-15T20:54:03.087 回答
0
在基本层面上,FindBugs 使用 Java 字节码。无论它是包含在 JAR 中,还是作为目录结构中的 .class 文件,都无关紧要。然而,由于 Android(据我所知)不执行 Java 字节码,而是执行“编译为 Dalvik 可执行字节码的 Java 源代码”[1],FindBugs 将没有什么可以分析的。
因此,虽然可以在没有 Jar 文件的情况下使用 FindBugs,但它确实需要 Java .class 文件,所以我认为它不适用于 Android APK。但是,如果可以使用 Java 编译源代码,则需要分析 .class 文件。
[1] 这在技术上可能不准确,希望你明白我的意思。
于 2010-09-30T08:58:16.423 回答