J'ai essayé le plugin Metrics et bien qu'il soit sympa et tout, ce n'est pas ce que mon patron recherche. Il compte une ligne avec une seule }
comme ligne et il ne veut pas que cela compte comme "ce n'est pas une ligne, c'est un choix de style". J'ai également besoin de générer une forme de rapport sur les métriques fournies. Existe-t-il de bons outils pour cela?
eclipse
metrics
line-count
confus
la source
la source
Réponses:
Installez le plugin Eclipse Metrics . Pour créer un rapport HTML (avec XML et CSV facultatifs)
right-click a project -> Export -> Other -> Metrics
.Vous pouvez ajuster les mesures des lignes de code en ignorant les lignes vides et réservées aux commentaires ou en excluant Javadoc si vous le souhaitez. Pour ce faire, consultez l'onglet à
Preferences -> Metrics -> LoC
.C'est tout. Il n'y a pas d'option spéciale pour exclure les accolades
{}
.Le plugin offre une métrique alternative à LoC appelée Number of Statements . Voici ce que l'auteur en dit:
Éditer:
Une fois que vous avez clarifié votre question, je comprends que vous avez besoin d'une vue pour les violations de métriques en temps réel, comme les avertissements ou les erreurs du compilateur. Vous avez également besoin d'une fonctionnalité de reporting pour créer des rapports pour votre patron. Le plugin que j'ai décrit ci-dessus est destiné à la création de rapports car vous devez exporter les métriques lorsque vous voulez les voir.
la source
right click a project -> Export
, j'ai installé le plug-in directement à partir du marché eclipse - la version est -Eclipse Metrics 3.12.0
, quelqu'un peut-il m'aider s'il vous plaît. Merci!Il y a toujours la "force brute":
Rechercher-> Fichier
Tapez ce qui suit dans "Contenant du texte" ->
^.*$
. Cochez ensuite la case "Expression régulière"Tapez ce qui suit dans "Modèles de nom de fichier" ->
*.java
Cliquez sur "Rechercher"
Vérifiez le nombre de correspondances dans l'onglet "Recherche".
la source
\n[\s]*
et il ignorera également les lignes videsSi sur OSX ou * NIX, utilisez
Obtenez toutes les lignes réelles de code java à partir de fichiers * .java
Récupère toutes les lignes des fichiers * .java, qui incluent des lignes vides et des commentaires
Obtenez des informations par fichier, cela vous donnera [chemin vers le fichier + "," + nombre de lignes]
la source
find . -name "*.java" | xargs cat | grep "[a-zA-Z0-9{}]" | wc -l
Une autre façon serait d'utiliser un autre utilitaire loc, comme LocMetrics par exemple.
Il répertorie également de nombreux autres outils de localisation . L'intégration avec Eclipse ne serait pas toujours là (comme ce serait le cas avec Metrics2 , que vous pouvez vérifier car il s'agit d'une version plus récente que Metrics ), mais au moins ces outils peuvent raisonner en termes de lignes logiques (calculées en additionnant les points-virgules terminaux et les accolades terminales).
Vous pouvez également vérifier avec eclipse-metrics est plus adapté à ce que vous attendez.
la source
Un autre outil est Google Analytix , qui vous permettra également d'exécuter des métriques même si vous ne pouvez pas construire le projet en cas d'erreurs
la source
Une façon possible de compter les lignes de code dans Eclipse:
à l'aide du menu Recherche / Fichier ..., sélectionnez l'onglet Recherche de fichier, spécifiez \ n [\ s] * pour Contenant du texte (cela ne comptera pas les lignes vides) et cochez Expression régulière.
Pointe du chapeau: www.monblocnotes.com/node/2030
la source
J'ai créé un plugin Eclipse, qui peut compter les lignes de code source. Il prend en charge Kotlin, Java, Java Script, JSP, XML, C / C ++, C # et de nombreux autres types de fichiers.
Jetez-y un œil. Tout commentaire serait apprécié!
le dépôt git-hub est ici
la source
ProjectCodeMeter compte les LLOC (lignes logiques de code) exactement comme vous l'avez décrit (uniquement les lignes effectives). il s'intègre dans eclipse en tant qu'outil de métrique de code externe , mais ce n'est pas en temps réel, il génère un rapport.En fait, il compte de nombreuses métriques de code source telles que la complexité, la complexité arithmétique, les chaînes codées en dur, les constantes numériques .. estime même le temps de développement en heures .
la source
Pour l'analyse statique, j'ai utilisé et recommandé SonarQube qui exécute à peu près toutes les métriques que vous pourriez souhaiter sur un large éventail de langues , et est gratuit dans la version de base (vous devez payer pour analyser les types de langues que je code seulement avec un pistolet sur ma tête).
Vous devez l'installer en tant qu'application Web exécutant l'analyse depuis votre référentiel de code source, mais elle dispose également d'un plugin Eclipse .
C'est exagéré si vous voulez juste savoir, de manière ponctuelle, combien de lignes de code il y a dans votre projet. Si vous souhaitez suivre les métriques dans le temps, comparer entre les projets, les avertissements d'incendie lorsqu'un seuil est dépassé, etc., c'est fantastique.
Divulgation: Je n'ai aucune relation financière avec SonarSource.
la source
La première chose à faire est de déterminer votre définition de «ligne de code» (LOC). Dans vos deux questions
et dans les réponses, par exemple,
vous pouvez voir que les gens ont des opinions différentes sur ce qui constitue une ligne de code. En particulier, les gens sont souvent imprécis quant à savoir s'ils veulent vraiment le nombre de lignes de code ou le nombre d'instructions. Par exemple, si vous avez la très longue ligne suivante remplie de déclarations, que voulez-vous signaler, 1 LOC ou des centaines de déclarations?
Et quand quelqu'un vous demande ce que vous appelez un LOC, assurez-vous que vous pouvez répondre, même si c'est juste "ma définition d'un LOC est la définition de Metrics2". En général, pour le code le plus souvent formaté (contrairement à mon exemple), les outils populaires donneront des nombres assez similaires, donc Metrics2, SonarQube, etc. devraient tous convenir, tant que vous les utilisez de manière cohérente. En d'autres termes, ne comptez pas le LOC d'un code à l'aide d'un seul outil et comparez cette valeur à une version ultérieure de ce code qui a été mesurée avec un outil différent.
la source