Подсчет номеров строк в Eclipse [закрыто]

148

У меня есть проект Java в Eclipse с ~ 10 пакетами и ~ 10 файлами классов на пакет. Есть ли способ определить общее количество строк кода для всего проекта из Eclipse? Я знаком с другими инструментами (например, Code Analyzer, wc и т. Д.), Но я хочу знать, есть ли способ сделать это в Eclipse (или получить подтверждение, что нет способа сделать это).

user128807
источник

Ответы:

98

Вот хороший плагин метрик, который отображает количество строк кода и многое другое:

http://metrics.sourceforge.net/

Он говорит, что требует Eclipse 3.1, хотя я думаю, что они имеют в виду 3.1+

Вот еще один плагин метрик, который был протестирован на Ganymede:

http://eclipse-metrics.sourceforge.net

AlbertoPL
источник
61
Обратите внимание, что metrics2.sourceforge.net заявляет, что первый плагин, описанный выше ( metrics.sourceforge.net ), больше не поддерживается, а metric2 предназначен для продолжения.
Берт Ф
2
Информация, которая сэкономила бы мне массу времени: плагин нужно активировать для каждого проекта в вашей рабочей области индивидуально, он будет изменять ваш файл .project и предоставляет метрики только до уровня проекта, но не до уровня рабочей области.
Корашен
1
обе ссылки кажутся мертвыми
tigerjack89
3
На Eclipse Mars 1 установка Метрик из Справки / Eclipse Marketplace завершилась неудачно - Метрики не отображаются в Окне / Показать представление / Другое. Вместо этого установка путем добавления его из metrics.sourceforge.net/update, как описано в metrics.sourceforge.net, сработала
Майкл
180

Search > File Search

Установите Regular expressionфлажок

Используйте это выражение:

\ П [\ s] *

Выберите любые типы файлов ( *.java, *.xmlи т. Д.), И рабочие наборы подходят для вас.

Брайан Суини
источник
21
... и check offвы имеете в виду, make sure it is checked. Обратите внимание, что этот метод не считает пустые строки.
Питер Айтай
1
Питер, спасибо за разъяснения.
Брайан Суини
1
К сожалению, это будет занимать много памяти на больших кодовых базах. На моем Indigo я ударил 700 тыс. Ударов, прежде чем затмение умерло. Конечно, в моем eclipse.ini есть только -Xmx314M
sandos
8
Как упомянуто @PeterAjtai, он не считает пустые строки. Тем не менее, это будет:\n[^\n]*
MiniGod
8
Чтобы вернуть количество непустых строк без комментариев, может помочь что-то подобное. \n[^!//][\s]*
Шон Ф
17

Под Linux, проще:

  1. перейдите в корневую папку вашего проекта
  2. использовать findдля рекурсивного поиска файлов * .java
  3. использовать wc -lдля подсчета строк:

Чтобы возобновить, просто сделайте:

find . -name '*.java' | xargs wc -l    
Yann
источник
2
Угадайте, проще зависит от определения здесь.
Александр
И люди устанавливают плагин Eclipse для загрузки своей памяти. Как будто это уже не было загружено слишком много.
neo7
У меня тоже хорошо получилось.
Муртаза Канчвала
7

Для затмения (Индиго), установить ( codepro ).

После установки: - Щелкните правой кнопкой мыши по своему проекту - Выберите codeproинструменты -> Вычислить метрики - И вы получите ответ на вкладке Метрики как Количество строк.

Ashish
источник
1
Это на самом деле довольно хорошо! Однако вы должны исправить ссылку, поскольку она дает 404.
Леннерт
Нашел этот пост, в котором есть ссылка на последнюю версию codepro - и она работает в Eclipse Oxygen: stackoverflow.com/questions/29390308/…
Леонардо Алвес Мачадо
6

Вы заинтересованы в подсчете количества исполняемых строк, а не общего количества строк в файле? Если это так, вы можете попробовать инструмент покрытия кода, такой как EclEmma . В качестве побочного эффекта статистики покрытия кода вы получаете статистику по числу исполняемых строк и блоков (а также методов и классов). Они свернуты от уровня метода вверх, так что вы можете увидеть количество строк для пакетов, исходных корней и проектов.

Богатый продавец
источник
4

Вы можете использовать командный файл со следующим скриптом:

@echo off
SET count=1
FOR /f "tokens=*" %%G IN ('dir "%CD%\src\*.java" /b /s') DO (type "%%G") >> lines.txt
SET count=1
FOR /f "tokens=*" %%G IN ('type lines.txt') DO (set /a lines+=1)
echo Your Project has currently totaled %lines% lines of code. 
del lines.txt
PAUSE
user5146215
источник
2

Я думаю, что если у вас есть MyEclipse, он добавляет метку на страницу свойств проекта, которая содержит общее количество строк исходного кода. Может не помочь вам, поскольку MyEclipse не является бесплатным, хотя.

К сожалению, этого было недостаточно в моем случае, поэтому я написал анализатор источника для сбора статистики, не собранной другими решениями (например, метриками, упомянутыми AlbertoPL).

akarnokd
источник
Хотите поделиться им для использования сообществом?
Gala101
3
@ Gala101: code.google.com/p/javasourcestat
akarnokd,
отличный инструмент! именно то, что я искал, спасибо!
Гимбл
2

Очень простой плагин для подсчета фактических строк исходного кода - плагин счетчика шагов . Пожалуйста, скачайте и попробуйте.

ссылка на github

Поместите загруженный файл JAR в папку eclipse \ plugin и перезапустите eclipse.

Щелкните правой кнопкой мыши и выберите счетчик шагов введите описание изображения здесь

Шаг Результат введите описание изображения здесь

GrabNewTech
источник
1

Вы можете использовать бывший продукт Instantiations CodePro AnalytiX . Этот плагин Eclipse предоставляет вам такую ​​статистику в представлении метрик кода. Это предоставляется Google бесплатно.

Габор Липтак
источник
2
Это тот же намек, что дал Ашиш, но с рабочей ссылкой.
Леннерт