2012-05-19 12 views
31

こんにちは私はネットビーンズ7を持っていて、プロジェクトの合計行を計算する方法が不思議でした。私はGoogleを見てきましたが、私がそれを行うたびに、私はデッドエンドや非動作プラグインしか見つけません。誰もその行を数える方法を知っていますか?netbeansプロジェクトの行数をカウントするには

+0

NetBeans 7.3でwordcountを正常に使用できました。 –

答えて

30

8.2で動作する7.1nb-wordcountで動作する wordcountを使用できます。 > オプション - - > その他 ツールに行くWORDCOUNT設定するには

JavaとGroovy以外のファイルを一致させる場合は、Accept filenameを変更する必要があります。 >オープンWORDCOUNTウィンドウ - カウントウィンドウを表示するには

ウィンドウに行きます。

統計情報を表示するには、WordCounting(第2ボタン)をクリックしてください。 プロジェクト(ウィンドウ)で選択されたディレクトリの統計情報を表示します(を選択した場合、はパッケージやWebページなどのパッケージでなければなりません)。

また、あなたは、Linux上にある場合は、単純に実行することができます。

find . -name '*.java' | xargs wc -l 
+1

'wordcount'プラグインはNetbeans 7.3.1では動作しません。どのスコープでもクリックでき、常に0ファイルがスキャンされます。 – s3m3n

+0

NetBeans 8.0.2でテストしたところ、完全に動作します。 –

+2

私はLinuxのコマンドがすべて必要でした。 – n0nag0n

3

JavaプロジェクトにはSource Code Metricsを使用できます。

+1

試しましたが、どこにでもたくさんの行があります。 –

+0

これを試してください:Windows>ソースコードメトリック;プロジェクトを右クリックし、[ソースコードメトリック]を選択します。 – ltin

+1

それでも、行の総量は表示されませんでしたか? –

17

を、私は、これはしかし、関与しないNetBeansプロジェクトで行数を見つける簡単な方法があり、非常に古い質問ですけどプラグインのインストール:

    あなたは
    ノートに ラインの量を見つけたいフォルダまたはパッケージに
  1. 右クリック:それはすべての行をカウントすることの原因となりますよう、プロジェクト自体にない右クリックを実行します。生成されたファイルあまりにも。
  2. FindまたはFind in Filesをクリックするか、CtrlキーFを押してください。
  3. MatchのドロップダウンがRegular Expressionに設定されていることを確認してください。
  4. \nを検索ボックスに入力します。
  5. findを押して、プロジェクトの行数を
    Search Resultsタブの上部に表示します。

注:NetBeansで、検索は、5000件の結果の後に停止しているので、あなたのプロジェクトはよりも長い場合、このメソッドは、私はカットアンドペーストを期待していた

+1

Heh。なぜ私はそれを考えなかったのですか? :-D – Simba

+0

これは5000件に制限されています – Yevgen

6

を動作しません。回答。だから私は1つ書いた。

EDIT:数百万行のコードをサポートします。外部ライブラリは必要ありません。

public static void main(String[] args) throws FileNotFoundException { 

    final String folderPath = "D:\\Dev\\MYPROJECT\\src"; 

    long totalLineCount = 0; 
    final List<File> folderList = new LinkedList<>(); 
    folderList.add(new File(folderPath)); 
    while (!folderList.isEmpty()) { 
     final File folder = folderList.remove(0); 
     if (folder.isDirectory() && folder.exists()) { 
      System.out.println("Scanning " + folder.getName()); 
      final File[] fileList = folder.listFiles(); 
      for (final File file : fileList) { 
       if (file.isDirectory()) { 
        folderList.add(file); 
       } else if (file.getName().endsWith(".java") 
         || file.getName().endsWith(".sql")) { 
        long lineCount = 0; 
        final Scanner scanner = new Scanner(file); 
        while (scanner.hasNextLine()) { 
         scanner.nextLine(); 
         lineCount++; 
        } 
        totalLineCount += lineCount; 
        final String lineCountString; 
        if (lineCount > 99999) { 
         lineCountString = "" + lineCount; 
        } else { 
         final String temp = ("  " + lineCount); 
         lineCountString = temp.substring(temp.length() - 5); 
        } 
        System.out.println(lineCountString + " lines in " + file.getName()); 
       } 
      } 
     } 
    } 
    System.out.println("Scan Complete: " + totalLineCount + " lines total"); 
} 

結果は、次のように表示されます。

(truncated) 
    47 lines in WarningLevel.java 
Scanning design 
1367 lines in ProcessResultsFrame.java 
    83 lines in TableSettingPanel.java 
Scanning images 
Scanning settingspanel 
    67 lines in AbstractSettingPanel.java 
    215 lines in AdvancedSettingsPanel.java 
    84 lines in BaseSettingsPanel.java 
    451 lines in DatabasePanel.java 
    488 lines in EmailPanel.java 
    458 lines in FTPGUIPanel.java 
    482 lines in FTPScheduledTaskPanel.java 
    229 lines in GUISettingPanel.java 
    87 lines in RootSettingJPanel.java 
    722 lines in ServerVisualIdentificationSettingPanel.java 
Scan Complete: 123685 lines total 

それは私が知っていると私はそれを修正するために全力を尽くしますしてください何かが欠けていた場合。ありがとう!

関連する問題