私はMetrics プラグインを試してみましたが、それはすばらしいものですが、上司が探しているものではありません。1行だけを1}
行としてカウントしますが、彼はそれを「行ではなく、スタイルの選択」としてカウントしたくありません。また、提供されたメトリクスに関する何らかの形式のレポートを生成する必要があります。これに適したツールはありますか?
10 に答える
常に「ブルート フォース」があります。
検索 -> ファイル
「Containing text」に次のように入力します ->
^.*$
。次に、「正規表現」チェックボックスをオンにします「ファイル名のパターン」に次のように入力します->
*.java
「検索」をクリック
「検索」タブで一致数を確認します。
Eclipse Metrics プラグインをインストールします。HTML レポートを作成するには (オプションで XML および CSV を使用) right-click a project -> Export -> Other -> Metrics
。
空白行やコメントのみの行を無視するか、必要に応じて Javadoc を除外することで、コードの行数の指標を調整できます。これを行うには、 のタブを確認してくださいPreferences -> Metrics -> LoC
。
それでおしまい。中括弧を除外する特別なオプションはありません{}
。
プラグインは、 Number of Statementsと呼ばれる LoC の代替メトリックを提供します。これについて、著者は次のように述べています。
このメトリックは、メソッド内のステートメントの数を表します。後者はさまざまなフォーマット規則に関して脆弱であるため、コード行数よりも堅牢な尺度であると考えています。
編集:
質問を明確にした後、コンパイラの警告やエラーなど、リアルタイムのメトリック違反のビューが必要であることを理解しました。上司へのレポートを作成するには、レポート機能も必要です。上で説明したプラグインは、メトリックを表示したいときにメトリックをエクスポートする必要があるため、レポート用です。
OSX または *NIX の場合
*.java ファイルから Java コードのすべての実際の行を取得する
find . -name "*.java" -exec grep "[a-zA-Z0-9{}]" {} \; | wc -l
空の行とコメントを含む *.java ファイルからすべての行を取得します。
find . -name "*.java" -exec cat | wc -l
ファイルごとに情報を取得します。これにより、[ファイルへのパス + "," + 行数] が得られます。
find . -name "*.java" -exec wc -l {} \;
別の方法は、たとえばLocMetricsなどの別の loc ユーティリティを使用することです。また、他の多くの loc ツール
もリストしています。Eclipse との統合は常にあるとは限りません ( Metrics2との統合はMetricsよりも新しいバージョンであるため確認できます) が、少なくともこれらのツールは論理行(合計によって計算される) の観点から推論できます。終端セミコロンと終端中括弧)。また、 eclipse-metricsが期待どおりに適合していることを
確認することもできます。
もう 1 つのツールはGoogle Analytixです。エラーが発生した場合にプロジェクトをビルドできない場合でも、メトリックを実行できます。
ソースコードの行数をカウントできる Eclipse プラグインを作成しました。Kotlin、Java、Java Script、JSP、XML、C/C++、C#、およびその他の多くのファイル タイプをサポートしています。
ぜひご覧ください。フィードバックをいただければ幸いです。
静的分析には、幅広い言語で必要となる可能性のあるほぼすべてのメトリックを実行し、基本バージョンでは無料であるSonarQube を使用し、推奨しています(私が必要とする種類の言語を分析するには料金を支払う必要があります)。私の頭に銃でコードインするだけです)。
ソース コード リポジトリから分析を実行する Web アプリとしてインストールする必要がありますが、Eclipse プラグインも含まれています。
プロジェクトに何行のコードがあるかを一度だけ知りたいだけなら、やり過ぎです。経時的にメトリクスを追跡したり、プロジェクト間で比較したり、しきい値を超えたときに警告を発したりしたい場合、それは素晴らしいことです.
開示: 私は SonarSource と金銭的な関係はありません。
ProjectCodeMeter は、説明したとおりに LLOC (コードの論理行) をカウントします (有効な行のみ)。外部コード メトリクス ツールとして Eclipseに統合されますが、リアルタイムではありませんが、レポートを生成します。実際には、複雑さ、算術の複雑さ、ハード コードされた文字列、数値定数など、多くのソース コード メトリクスをカウントします。開発時間を数時間で見積もることさえできます.