374

How to count lines of Java code using IntelliJ IDEA?

Willi Mentzel
30.2k21 gold badges119 silver badges129 bronze badges
asked Aug 8, 2010 at 18:45
1

9 Answers 9

524

The Statistic plugin worked for me.

To install it from Intellij:

File - Settings - Plugins - Browse repositories... Find it on the list and double-click on it.

Access the 'statistic' toolbar via tabs in bottom left of project screen capture of statistic toolbar, bottom left

OLDER VERSIONS: Open statistics window from:

View -> Tool Windows -> Statistic

answered Dec 3, 2010 at 2:14
Sign up to request clarification or add additional context in comments.

16 Comments

The Statistic plugin works with IntelliJ IDEA 12, and even shows counts and percentages for comment lines and blank lines vs. total lines. Could use a bit more documentation. Launch it via new button that is installed in lower left corner of IntelliJ IDEA window. It has additional settings: File - Settings - (Project Settings) Statistic.
The Statistic plugin provides file counts in addition to line counts. I was unable to find file counts with the Metrics Reloaded plug-in.
Works on IDEA 2017年2月5日, project > 150 kLOC, but does not group counts, no per module / per source folder sums --> mostly useless :-/
This plugin doesn't work at all in 2018.1. The View -> Tool windows -> Stastistic just shows an empty window.
@YngvarKristiansen You have to do an initial refresh (top left corner)
|
124

Quick and dirty way is to do a global search for '\n'. You can filter it any way you like on file extensions etc.

Ctrl-Shift-F -> Text to find = '\n' -> Find.

Edit: And 'regular expression' has to be checked.

jpaugh
7,1645 gold badges46 silver badges94 bronze badges
answered Jul 21, 2011 at 21:49

9 Comments

Yes, but this also searches through all the files that are in your libraries (ie: if you are creating a web application it looks through all the lines of JQuery for example)
Neat idea but only if you either trim all empty lines first or explicitly want them to be counted.
@MarcelStör Try it with "(.+)\n"
Searching for regex ".+" works better. It wont miss the last line in the file if it's missing a trailing newline like "\n" or ".+\n" will. It also semantically matches what your searching for better, that is, lines with characters.
I cannot see the number of lines. It says "100+ matches in 3+ files" which isn't very helpful. I use IntelliJ IDEA Community 2019.2
|
55

In the past I have used the excellently named MetricsReloaded plugin to get this information.

You can install it from the JetBrains repository.

Once installed, access via: Analyze -> Calculate Metrics...

BullyWiiPlaza
19.5k16 gold badges142 silver badges218 bronze badges
answered Aug 9, 2010 at 10:49

9 Comments

Agreed, documentation is needed. How does one activate the plugin once it is installed?
To answer my own question: Analyize -> Calculate Metrics
Doesn't work with IntelliJ IDEA 12: github.com/BasLeijdekkers/MetricsReloaded/issues/19
Works in IDEA 12 now, not found in the repository you need to install via manually downloading.
As of 2021.2, it works just fine.
|
46

Although it is not an IntelliJ option, you could use a simple Bash command (if your operating system is Linux/Unix). Go to your source directory and type:

find . -type f -name '*.java' | xargs cat | wc -l
Ondra Žižka
47.2k49 gold badges228 silver badges298 bronze badges
answered Jun 1, 2013 at 11:31

5 Comments

I would do find . -type f -name '*.java' | xargs cat | wc -l (quoting the *.java part). Otherwise, the shell environment might expand the *.java too early and the command won't work properly.
This will return too many lines. Empty lines should not be counted
ignore blank lines: find . -type f -name '*.java' | xargs cat | grep -ve '^\s*$' | wc -l
this also works in Windows with 'git bash' installed
I bet the script could be modified to only count the files managed by source control.
25

Just like Neil said:

Ctrl-Shift-F -> Text to find = '\n' -> Find.

With only one improvement, if you enter "\n+", you can search for non-empty lines

If lines with only whitespace can be considered empty too, then you can use the regex "(\s*\n\s*)+" to not count them.

ItsJ0el
551 silver badge5 bronze badges
answered Apr 28, 2013 at 12:54

1 Comment

This is really slow, use only if there's no better way. I recommend installing GitBash and using the find.
14

Statistic plugins works fine!

Here is a quick case:

  1. Ctrl+Shift+A and serach for "Statistic" to open the panel.
  2. You will see panel as the screenshot and then click Refresh for whole project or select your project or file and Refresh on selection for only selection.

statistic

answered Jul 15, 2016 at 9:26

Comments

5

now 2 versions of metricsreloaded available. One supported on v9 and v10 isavailable here http://plugins.intellij.net/plugin/?idea&id=93

answered Feb 20, 2011 at 4:22

1 Comment

Doesn't work with IntelliJ IDEA 12: github.com/BasLeijdekkers/MetricsReloaded/issues/19
3

You can to use Count Lines of Code (CLOC)

On Settings -> External Tools add a new tool

  • Name: Count Lines of Code
  • Group: Statistics
  • Program: path/to/cloc
  • Parameters: $ProjectFileDir$ or $FileParentDir$
answered Nov 5, 2014 at 13:35

Comments

2

To find all including empty lines of code try @Neil's solution:

Open Find in Path (Ctrl+Shift+F)

Search for the following regular expression: \n'

For lines with at least one character use following expression:

(.+)\n

For lines with at least one word character or digit use following expression:

`(.*)([\w\d]+)(.*)\n`

Notice: But the last line of file is just counted if you have a line break after it.

jpaugh
7,1645 gold badges46 silver badges94 bronze badges
answered Sep 19, 2014 at 14:59

Comments

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.