Class LineLengthCheck
- All Implemented Interfaces:
Configurable,Contextualizable,FileSetCheck
Checks for long lines.
Rationale: Long lines are hard to read in printouts or if developers have limited screen space for the source code, e.g. if the IDE displays additional information like project tree, class hierarchy, etc.
-
The calculation of the length of a line takes into account the number of
expanded spaces for a tab character (
'\t'). The default number of spaces is8. To specify a different number of spaces, the user can setTreeWalkerpropertytabWidthwhich applies to all Checks, includingLineLength; or can set propertytabWidthforLineLengthalone. -
Package and import statements (lines matching pattern
^(package|import) .*) are not verified by this check.
-
Property
fileExtensions- Specify file extensions that are accepted. Type isjava.lang.String[]. Default value is"". -
Property
ignorePattern- Specify pattern for lines to ignore. Type isjava.util.regex.Pattern. Default value is"^$". -
Property
max- Specify the maximum line length allowed. Type isint. Default value is80.
To configure the check to accept lines up to 80 characters long:
<module name="LineLength"/>
To configure the check to accept lines up to 120 characters long:
<module name="LineLength"> <property name="max" value="120"/> </module>
To configure the check to ignore lines that begin with " * " code,
followed by just one word, such as within a Javadoc comment:
<module name="LineLength"> <property name="ignorePattern" value="^ *\* *[^ ]+$"/> </module>
To configure the check to only validate java files and ignore other extensions:
<module name="LineLength"> <property name="fileExtensions" value="java"/> </module>
To configure the check to only validate xml and property files and ignore other extensions:
<module name="LineLength"> <property name="fileExtensions" value="xml, properties"/> </module>
Parent is com.puppycrawl.tools.checkstyle.Checker
Violation Message Keys:
-
maxLineLen
- Since:
- 3.0
-
Nested Class Summary
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
AutomaticBean.OutputStreamOptions -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intDefault maximum number of columns in a line.private static final PatternPatterns matching package, import, and import static statements.private PatternSpecify pattern for lines to ignore.private intSpecify the maximum line length allowed.static final StringA key is pointing to the warning message text in "messages.properties" file. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprocessFiltered(File file, FileText fileText) Called to process a file that matches the specified file extensions.final voidsetIgnorePattern(Pattern pattern) Setter to specify pattern for lines to ignore.voidsetMax(int length) Setter to specify the maximum line length allowed.Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck
addViolations, beginProcessing, destroy, finishProcessing, fireErrors, getFileContents, getFileExtensions, getMessageDispatcher, getTabWidth, getViolations, init, log, log, process, setFileContents, setFileExtensions, setMessageDispatcher, setTabWidthMethods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityMethods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
configure, contextualize, getConfiguration, setupChildMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.puppycrawl.tools.checkstyle.api.Configurable
configureMethods inherited from interface com.puppycrawl.tools.checkstyle.api.Contextualizable
contextualize
-
Field Details
-
MSG_KEY
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
DEFAULT_MAX_COLUMNS
private static final int DEFAULT_MAX_COLUMNSDefault maximum number of columns in a line.- See Also:
-
IGNORE_PATTERN
Patterns matching package, import, and import static statements. -
max
private int maxSpecify the maximum line length allowed. -
ignorePattern
Specify pattern for lines to ignore.
-
-
Constructor Details
-
LineLengthCheck
public LineLengthCheck()
-
-
Method Details
-
processFiltered
Description copied from class:AbstractFileSetCheckCalled to process a file that matches the specified file extensions.- Specified by:
processFilteredin classAbstractFileSetCheck- Parameters:
file- the file to be processedfileText- the contents of the file.
-
setMax
public void setMax(int length) Setter to specify the maximum line length allowed.- Parameters:
length- the maximum length of a line
-
setIgnorePattern
Setter to specify pattern for lines to ignore.- Parameters:
pattern- a pattern.
-