2010-09-17 4 views
0

S'il vous plaît me suggérer si nous pouvons utiliser l'outil findbug sans fichiers Jar comme entrée ou non !! Je travaille sur un téléphone Android dans lequel le framework a été personnalisé, donc je ne peux pas utiliser Eclipse pour construire mon code (je ne peux pas utiliser le plugin findbug pour compiler). Donc j'utilise l'interface graphique findbug. Mais quand nous créons un nouveau projet, il attend des fichiers jar, du code source java, des archives de classe. Mais Android ne supporte pas les fichiers jar, nous créons généralement apk. Donc, je ne suis pas en mesure de fournir des informations sur findbugs. S'il vous plaît quelqu'un peut-il me suggérer comment utiliser findbugs lorsque vous avez seulement du code source Java avec vous. Merci d'avance.Est-il possible d'utiliser l'outil Findbugs sans fichiers d'entrée Jar?

Répondre

0

À la base, FindBugs fonctionne avec le bytecode Java. Que ce soit contenu dans un fichier JAR ou sous forme de fichiers .class dans une structure de répertoire, cela n'a pas vraiment d'importance. Cependant, étant donné qu'Android (pour autant que je sache) n'exécute pas de bytecode Java, il exécute plutôt du "code source Java compilé en bytecode exécutable Dalvik" [1], il n'y aura rien à analyser pour FindBugs.

Donc, même s'il est possible d'utiliser FindBugs sans fichiers Jar, cela nécessite des fichiers Java .class, donc je ne pense pas que cela fonctionnera avec Android APK. Cependant, s'il est possible de compiler votre source avec Java, il y aurait des fichiers .class à analyser.

[1] Ceci est probablement techniquement inexact, j'espère que vous obtenez ce que je veux dire.

1

Findbugs nécessite que le bytecode soit passé pour l'analyse. Pour le fait, il ne peut exécuter l'analyse que sur des fichiers .class ou .jar. Le plugin Eclipse de Findbugs est assez intelligent pour trouver les fichiers de classe des fichiers sources entrés, faire l'analyse et ensuite trouver les fichiers sources de ces fichiers de classe (le cas échéant) dans l'EDI et les marquer comme résultat. Donc, c'est trompeur, sauf si vous allez dans leurs détails de développement. Il ne fonctionnera pas pour vos APK Android si vous n'avez pas de bytecode disponible pour cela.

Vaishali Kulkarni

-Weblayers Inc.

Questions connexes