Вопрос

Здравствуйте, у меня NetBeans 7, и мне интересно, как рассчитать общее количество строк для проекта.Я просматривал Google, но каждый раз, когда я это делаю, я нахожу только тупики или неработающие плагины.Кто-нибудь знает, как считать строки?

Это было полезно?

Решение

Вы можете использовать WordCount , который работает с 7.1 NB-WordCount , который работает с 8.2.

Чтобы настроить WordCount Go в Tools -> Параметры -> Разное . Вы должны изменить Accept filename, если вы хотите, чтобы другие файлы, кроме Java и Groovy, чтобы соответствовать.

Для отображения окна подсчета Go в Окно -> Откройте WordCount Window .

Чтобы отобразить статистику Нажмите на WordCounting (вторая кнопка).Я покажу статистика каталога, выбранного в проектах (окно) (это должно быть пакет или что-то вроде как исходные пакеты или веб-страницы, это не будет работать, если вы выберете проект).

Также, если вы находитесь в Linux, вы можете просто выполнить:

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

Другие советы

Я знаю, что это очень старый вопрос, однако есть более простой способ найти количество строк в проекте NetBeans, который не требует установки плагинов:

  1. Щелкните правой кнопкой мыши на папке или пакете, в которой вы хотите найти количество строк в
    Примечание:Не щелкайте правой кнопкой мыши по самому проекту, так как это приведет к подсчету строк во всех сгенерированных файлах.
  2. Нажмите на Find или Find in Files или нажмите CtrlФ.
  3. Убедитесь, что Match раскрывающийся список установлен на Regular Expression.
  4. Введите \n в поле поиска.
  5. Нажмите «Найти», и количество строк вашего проекта отобразится в верхней части окна.
    Search Results вкладка.

Примечание:В NetBeans поиск прекращается после 5000 результатов, поэтому, если ваш проект длиннее, этот метод не будет работать.

Я надеялся на отрезанный ответ.Так что я написал один.

Редактировать: поддерживает миллионы строк кода.Никакие внешние библиотеки не требуются.

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
.

Если это не хватает чего-то, пожалуйста, дайте мне знать, и я сделаю все возможное, чтобы исправить это.Спасибо!

Вы можете использовать Наиболее метрики исходного кода для проектов Java.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top