Skip to content

uncliear error message if basedir is Linux based but execution is on windows #17951

@stephengold

Description

@stephengold

I have read check documentation.
I have downloaded the latest checkstyle from: https://checkstyle.org/cmdline.html#Download_and_Run
I have executed the cli and showed it below, as cli describes the problem better than 1,000 words

improve exception message in some way to let users identify that <property name="basedir" is contributed to failure.

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$ javac UiVersion.java

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$ cat config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC
    "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
    "https://checkstyle.org/dtds/configuration_1_3.dtd">
<!-- Checkstyle configuration for the Acorus project -->

<module name="Checker">
    <property name="basedir" value="/mnt/virginia/home/sgold/NetBeansProjects/Acorus/"/>
    <property name="charset" value="UTF-8"/>
    <property name="fileExtensions" value="java, properties, xml"/>
    <property name="severity" value="error"/>

    <!-- Check that a package-info.java file exists for each package:  -->
    <!-- See https://checkstyle.org/checks/javadoc/javadocpackage.html -->
    <module name="JavadocPackage"/>

    <!-- Miscellaneous checks:                  -->
    <!-- See https://checkstyle.org/checks/misc -->
    <module name="NewlineAtEndOfFile"/>

    <!-- Regexp checks:                           -->
    <!-- See https://checkstyle.org/checks/regexp -->
    <module name="RegexpSingleline">
        <property name="format" value="\s$"/>
        <property name="message" value="Line has trailing whitespace."/>
    </module>

    <!-- Checks for size violations:             -->
    <!-- See https://checkstyle.org/checks/sizes -->
    <module name="FileLength">
        <property name="max" value="1100"/>
    </module>
    <module name="LineLength">
        <property name="max" value="80"/>
    </module>

    <!-- Checks for whitespace:                       -->
    <!-- See https://checkstyle.org/checks/whitespace -->
    <module name="FileTabCharacter">
        <property name="eachLine" value="true"/>
    </module>

    <module name="TreeWalker">
        <!-- Checks for annotations:                      -->
        <!-- See https://checkstyle.org/checks/annotation -->
        <module name="AnnotationLocation">
            <property name="id" value="AnnotationLocationMostCases"/>
            <property name="tokens" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, RECORD_DEF, COMPACT_CTOR_DEF"/>
        </module>
        <module name="AnnotationLocation">
            <property name="allowSamelineMultipleAnnotations" value="true"/>
            <property name="id" value="AnnotationLocationVariables"/>
            <property name="tokens" value="VARIABLE_DEF"/>
        </module>
        <module name="AnnotationUseStyle"/>
        <module name="MissingDeprecated"/>

        <!-- Checks for blocks:                       -->
        <!-- See https://checkstyle.org/checks/blocks -->
        <module name="AvoidNestedBlocks"/>
        <module name="EmptyBlock">
            <property name="option" value="TEXT"/>
            <property name="tokens" value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH, ARRAY_INIT, INSTANCE_INIT, LITERAL_CASE, LITERAL_CATCH, LITERAL_DEFAULT, LITERAL_DO, LITERAL_FOR, LITERAL_SYNCHRONIZED, LITERAL_WHILE, STATIC_INIT"/>
        </module>
        <module name="EmptyCatchBlock"/>
        <module name="LeftCurly">
            <property name="tokens" value="ANNOTATION_DEF, CLASS_DEF, CTOR_DEF, ENUM_CONSTANT_DEF, ENUM_DEF, INTERFACE_DEF, LAMBDA, LITERAL_CASE, LITERAL_CATCH, LITERAL_DEFAULT, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, METHOD_DEF, OBJBLOCK, STATIC_INIT, RECORD_DEF, COMPACT_CTOR_DEF"/>
        </module>
        <module name="NeedBraces">
            <property name="tokens" value="LITERAL_DO, LITERAL_ELSE, LITERAL_FOR, LITERAL_IF, LITERAL_WHILE"/>
        </module>
        <module name="RightCurly">
            <property name="id" value="RightCurlyAlone"/>
            <property name="option" value="alone"/>
            <property name="tokens" value="CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, STATIC_INIT, INSTANCE_INIT, ANNOTATION_DEF, ENUM_DEF, INTERFACE_DEF, RECORD_DEF, COMPACT_CTOR_DEF, LITERAL_SWITCH, LITERAL_CASE"/>
        </module>
        <module name="SuppressionXpathSingleFilter">
            <!-- suppression is required till https://github.com/checkstyle/checkstyle/issues/7541 -->
            <property name="id" value="RightCurlyAlone"/>
            <property name="query" value="//RCURLY[parent::SLIST[count(./*)=1] or preceding-sibling::*[last()][self::LCURLY]]"/>
        </module>
        <module name="RightCurly">
            <property name="id" value="RightCurlySame"/>
            <property name="tokens" value="LITERAL_TRY, LITERAL_CATCH, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_DO"/>
        </module>

        <!-- Checks for class design:                 -->
        <!-- See https://checkstyle.org/checks/design -->
        <module name="DesignForExtension"/>
        <module name="FinalClass"/>
        <module name="HideUtilityClassConstructor"/>
        <module name="InterfaceIsType"/>
        <module name="OneTopLevelClass"/>

        <!-- Checks for common coding problems:       -->
        <!-- See https://checkstyle.org/checks/coding -->
        <module name="AvoidDoubleBraceInitialization"/>
        <module name="AvoidNoArgumentSuperConstructorCall"/>
        <module name="ConstructorsDeclarationGrouping"/>
        <module name="CovariantEquals"/>
        <module name="DefaultComesLast"/>
        <module name="EmptyStatement"/>
        <module name="EqualsHashCode"/>
        <module name="FallThrough"/>
        <module name="HiddenField">
            <property name="tokens" value="VARIABLE_DEF, PATTERN_VARIABLE_DEF, LAMBDA, RECORD_COMPONENT_DEF"/>
        </module>
        <module name="IllegalCatch"/>
        <module name="IllegalInstantiation"/>
        <module name="IllegalThrows"/>
        <module name="IllegalToken">
            <property name="tokens" value="LITERAL_NATIVE, POST_DEC, POST_INC, STATIC_IMPORT"/>
        </module>
        <module name="IllegalTokenText">
            <property name="format" value="\\u00(09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)"/>
            <property name="message" value="Use special escape sequence instead of octal value or Unicode escaped value."/>
            <property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>
        </module>
        <module name="IllegalType"/>
        <module name="MissingSwitchDefault"/>
        <module name="MultipleVariableDeclarations"/>
        <module name="NoFinalizer"/>
        <module name="OneStatementPerLine"/>
        <module name="VariableDeclarationUsageDistance">
            <property name="allowedDistance" value="5"/>
        </module>

        <!-- Checks for imports:                       -->
        <!-- See https://checkstyle.org/checks/imports -->
        <module name="AvoidStarImport"/>
        <module name="AvoidStaticImport"/>
        <module name="CustomImportOrder">
            <property name="customImportOrderRules" value="STATIC###THIRD_PARTY_PACKAGE"/>
            <property name="separateLineBetweenGroups" value="true"/>
            <property name="sortImportsInGroupAlphabetically" value="true"/>
            <property name="tokens" value="IMPORT, STATIC_IMPORT, PACKAGE_DEF"/>
        </module>
        <module name="IllegalImport"/> <!-- defaults to sun.* packages -->
        <module name="RedundantImport"/>
        <module name="UnusedImports">
            <property name="processJavadoc" value="false"/>
        </module>

        <!-- Checks for Javadoc comments:              -->
        <!-- See https://checkstyle.org/checks/javadoc -->
        <module name="AtclauseOrder">
            <property name="tagOrder" value="@param, @return, @throws, @deprecated"/>
            <property name="target" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF"/>
        </module>
        <module name="InvalidJavadocPosition"/>
        <module name="JavadocMethod">
            <property name="allowMissingParamTags" value="false"/>
            <property name="allowMissingReturnTag" value="false"/>
            <property name="allowedAnnotations" value=""/>
            <property name="tokens" value="METHOD_DEF, CTOR_DEF, ANNOTATION_FIELD_DEF, COMPACT_CTOR_DEF"/>
        </module>
        <module name="JavadocStyle">
            <property name="checkFirstSentence" value="false"/>
        </module>
        <module name="JavadocTagContinuationIndentation">
            <property name="offset" value="0"/>
        </module>
        <module name="JavadocVariable"/>
        <module name="MissingJavadocMethod">
            <property name="allowedAnnotations" value=""/>
            <property name="minLineCount" value="-1"/>
            <property name="scope" value="private"/>
            <property name="tokens" value="METHOD_DEF, CTOR_DEF, ANNOTATION_FIELD_DEF, COMPACT_CTOR_DEF"/>
        </module>
        <module name="MissingJavadocType">
            <property name="scope" value="protected"/>
        </module>
        <module name="NonEmptyAtclauseDescription"/>
        <module name="RequireEmptyLineBeforeBlockTagGroup"/>
        <module name="SingleLineJavadoc"/>
        <module name="SummaryJavadoc">
            <property name="forbiddenSummaryFragments" value="^@return the *|^This method returns |^A [{]@code [0-9A-Za-z]+[}]( is a )"/>
            <property name="period" value=""/>
        </module>

        <!-- Miscellaneous checks:                  -->
        <!-- See https://checkstyle.org/checks/misc -->
        <module name="ArrayTypeStyle"/>
        <module name="CommentsIndentation">
            <property name="tokens" value="SINGLE_LINE_COMMENT, BLOCK_COMMENT_BEGIN"/>
        </module>
        <module name="Indentation">
            <property name="arrayInitIndent" value="4"/>
            <property name="basicOffset" value="4"/>
            <property name="braceAdjustment" value="0"/>
            <property name="caseIndent" value="4"/>
            <property name="lineWrappingIndentation" value="4"/>
            <property name="throwsIndent" value="4"/>
        </module>
        <module name="NoCodeInFile"/>
        <module name="OuterTypeFilename"/>
        <module name="UpperEll"/>

        <!-- Modifier check:                            -->
        <!-- See https://checkstyle.org/checks/modifier -->
        <module name="RedundantModifier"/>

        <!-- Checks for naming conventions:           -->
        <!-- See https://checkstyle.org/checks/naming -->
        <module name="AbbreviationAsWordInName">
            <property name="allowedAbbreviationLength" value="1"/>
            <property name="ignoreFinal" value="false"/>
            <property name="tokens" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, ANNOTATION_DEF, ANNOTATION_FIELD_DEF, PARAMETER_DEF, VARIABLE_DEF, METHOD_DEF, PATTERN_VARIABLE_DEF, RECORD_DEF, RECORD_COMPONENT_DEF"/>
        </module>
        <module name="CatchParameterName">
            <property name="format" value="^exception$"/>
            <message key="name.invalidPattern" value="Catch parameter name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="ClassTypeParameterName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Class type name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="InterfaceTypeParameterName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Interface type name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="LambdaParameterName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Lambda parameter name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="LocalFinalVariableName"/>
        <module name="LocalVariableName">
            <property name="format" value="^[a-z][0-9A-Za-z]{0,19}$"/>
            <message key="name.invalidPattern" value="Local variable name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="MemberName">
            <property name="format" value="^[a-z][0-9A-Za-z]{0,24}$"/>
            <message key="name.invalidPattern" value="Member name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="MethodName">
            <property name="format" value="^[a-z][0-9A-Za-z]{0,30}$"/>
            <message key="name.invalidPattern" value="Method name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="MethodTypeParameterName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Method type name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="PackageName">
            <property name="format" value="^jme3utilities[.]ui([.]test)?$"/>
            <message key="name.invalidPattern" value="Package name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="ParameterName">
            <property name="format" value="^[a-z][0-9A-Za-z]{0,16}$"/>
            <message key="name.invalidPattern" value="Parameter name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="PatternVariableName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Pattern variable name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="RecordComponentName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Record component name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="RecordTypeParameterName">
            <property name="format" value="^$"/>
            <message key="name.invalidPattern" value="Record type name ''{0}'' must match pattern ''{1}''."/>
        </module>
        <module name="StaticVariableName"/>
        <module name="TypeName">
            <property name="tokens" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, ANNOTATION_DEF, RECORD_DEF"/>
            <message key="name.invalidPattern" value="Type name ''{0}'' must match pattern ''{1}''."/>
        </module>

        <!-- Regexp checks:                           -->
        <!-- See https://checkstyle.org/checks/regexp -->
        <module name="RegexpSinglelineJava">
            <property name="format" value="static (abstract|final|native|package|private|protected)|(native|package|private|protected) (abstract|final)"/>
            <property name="message" value="Modifiers must appear in alphabetical order."/>
        </module>
        <module name="RegexpSinglelineJava">
            <property name="format" value="\{[ ]+\}"/>
            <property name="message" value="Empty blocks must not contain spaces."/>
        </module>

        <!-- Checks for size violations:             -->
        <!-- See https://checkstyle.org/checks/sizes -->
        <module name="MethodLength">
            <property name="max" value="250"/>
        </module>
        <module name="ParameterNumber">
            <property name="max" value="5"/>
        </module>

        <!-- Checks for whitespace:                       -->
        <!-- See https://checkstyle.org/checks/whitespace -->
        <module name="EmptyForInitializerPad"/>
        <module name="EmptyForIteratorPad"/>
        <module name="EmptyLineSeparator">
            <property name="allowNoEmptyLineBetweenFields" value="true"/>
            <property name="tokens" value="IMPORT, STATIC_IMPORT, CLASS_DEF, INTERFACE_DEF, ENUM_DEF, STATIC_INIT, INSTANCE_INIT, METHOD_DEF, CTOR_DEF, VARIABLE_DEF, RECORD_DEF, COMPACT_CTOR_DEF"/>
        </module>
        <module name="GenericWhitespace">
            <message key="ws.followed" value="GenericWhitespace ''{0}'' is followed by whitespace."/>
            <message key="ws.illegalFollow" value="GenericWhitespace ''{0}'' should followed by whitespace."/>
            <message key="ws.notPreceded" value="GenericWhitespace ''{0}'' is not preceded with whitespace."/>
            <message key="ws.preceded" value="GenericWhitespace ''{0}'' is preceded with whitespace."/>
        </module>
        <module name="MethodParamPad">
            <property name="tokens" value="CTOR_DEF, LITERAL_NEW, METHOD_CALL, METHOD_DEF, SUPER_CTOR_CALL, ENUM_CONSTANT_DEF, RECORD_DEF"/>
        </module>
        <module name="NoLineWrap">
            <property name="tokens" value="PACKAGE_DEF, IMPORT, STATIC_IMPORT"/>
        </module>
        <module name="NoWhitespaceAfter"/>
        <module name="NoWhitespaceBefore">
            <property name="allowLineBreaks" value="true"/>
            <property name="tokens" value="COMMA, SEMI, POST_INC, POST_DEC, DOT, LABELED_STAT, METHOD_REF"/>
        </module>
        <module name="NoWhitespaceBeforeCaseDefaultColon"/>
        <module name="OperatorWrap">
            <property name="option" value="NL"/>
            <property name="tokens" value="BAND, BOR, BSR, BXOR, DIV, EQUAL, GE, GT, LAND, LE, LITERAL_INSTANCEOF, LOR, LT, MINUS, MOD, NOT_EQUAL, PLUS, QUESTION, SL, SR, STAR, METHOD_REF, TYPE_EXTENSION_AND"/>
        </module>
        <module name="ParenPad">
            <property name="tokens" value="ANNOTATION, ANNOTATION_FIELD_DEF, CTOR_CALL, CTOR_DEF, DOT, ENUM_CONSTANT_DEF, EXPR, LITERAL_CATCH, LITERAL_DO, LITERAL_FOR, LITERAL_IF, LITERAL_NEW, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_WHILE, METHOD_CALL, METHOD_DEF, QUESTION, RESOURCE_SPECIFICATION, SUPER_CTOR_CALL, LAMBDA, RECORD_DEF"/>
        </module>
        <module name="SeparatorWrap">
            <!-- ARRAY_DECLARATOR is EOL until https://github.com/google/styleguide/issues/258 -->
            <property name="id" value="SeparatorWrapArrayDeclarator"/>
            <property name="option" value="EOL"/>
            <property name="tokens" value="ARRAY_DECLARATOR"/>
        </module>
        <module name="SeparatorWrap">
            <property name="id" value="SeparatorWrapComma"/>
            <property name="option" value="EOL"/>
            <property name="tokens" value="COMMA"/>
        </module>
        <module name="SeparatorWrap">
            <property name="id" value="SeparatorWrapDot"/>
            <property name="option" value="nl"/>
            <property name="tokens" value="DOT"/>
        </module>
        <module name="SeparatorWrap">
            <!-- ELLIPSIS is EOL until https://github.com/google/styleguide/issues/259 -->
            <property name="id" value="SeparatorWrapEllipsis"/>
            <property name="option" value="EOL"/>
            <property name="tokens" value="ELLIPSIS"/>
        </module>
        <module name="SeparatorWrap">
            <property name="id" value="SeparatorWrapMethodRef"/>
            <property name="option" value="nl"/>
            <property name="tokens" value="METHOD_REF"/>
        </module>
        <module name="TypecastParenPad"/>
        <module name="WhitespaceAfter">
            <property name="tokens" value="COMMA, SEMI, TYPECAST, LITERAL_IF, LITERAL_ELSE, LITERAL_WHILE, LITERAL_DO, LITERAL_FOR, DO_WHILE"/>
        </module>
        <module name="WhitespaceAround">
            <property name="allowEmptyConstructors" value="true"/>
            <property name="allowEmptyLambdas" value="true"/>
            <property name="allowEmptyLoops" value="true"/>
            <property name="allowEmptyMethods" value="true"/>
            <property name="allowEmptyTypes" value="true"/>
            <property name="ignoreEnhancedForColon" value="false"/>
            <property name="tokens" value="ASSIGN, BAND, BAND_ASSIGN, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, COLON, DIV, DIV_ASSIGN, DO_WHILE, EQUAL, GE, GT, LAMBDA, LAND, LCURLY, LE, LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_RETURN, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, LOR, LT, MINUS, MINUS_ASSIGN, MOD, MOD_ASSIGN, NOT_EQUAL, PLUS, PLUS_ASSIGN, QUESTION, RCURLY, SL, SLIST, SL_ASSIGN, SR, SR_ASSIGN, STAR, STAR_ASSIGN, LITERAL_ASSERT, TYPE_EXTENSION_AND"/>
            <message key="ws.notFollowed" value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
            <message key="ws.notPreceded" value="WhitespaceAround: ''{0}'' is not preceded with whitespace."/>
        </module>
    </module>
</module>

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$ cat UiVersion.java
/*
 Copyright (c) 2017-2025 Stephen Gold

 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are met:

 1. Redistributions of source code must retain the above copyright notice, this
    list of conditions and the following disclaimer.

 2. Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

 3. Neither the name of the copyright holder nor the names of its
    contributors may be used to endorse or promote products derived from
    this software without specific prior written permission.

 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
package jme3utilities.ui;

import java.util.logging.Logger;

/**
 * Version strings for the Acorus library. All methods should be static.
 *
 * @author Stephen Gold sgold@sonic.net
 */
final public class UiVersion {
    // *************************************************************************
    // constants and loggers

    /**
     * message logger for this class
     */
    final public static Logger logger
            = Logger.getLogger(UiVersion.class.getName());
    // *************************************************************************
    // constructors

    /**
     * A private constructor to inhibit instantiation of this class.
     */
    private UiVersion() {
    }
    // *************************************************************************
    // new methods exposed

    /**
     * Return the terse version string for this library.
     *
     * @return the branch name and revision string (not null, not empty)
     */
    public static String versionShort() {
        return "master 2.0.3-SNAPSHOT";
    }
}

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$ RUN_LOCALE="-Duser.language=en -Duser.country=US"

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$  java $RUN_LOCALE -jar checkstyle-12.0.1-all.jar -c config.xml UiVersion.java
Starting audit...
com.puppycrawl.tools.checkstyle.api.CheckstyleException: Exception was thrown while processing UiVersion.java
        at com.puppycrawl.tools.checkstyle.Checker.processFiles(Checker.java:313)
        at com.puppycrawl.tools.checkstyle.Checker.process(Checker.java:227)
        at com.puppycrawl.tools.checkstyle.Main.runCheckstyle(Main.java:429)
        at com.puppycrawl.tools.checkstyle.Main.runCli(Main.java:347)
        at com.puppycrawl.tools.checkstyle.Main.execute(Main.java:206)
        at com.puppycrawl.tools.checkstyle.Main.main(Main.java:130)
Caused by: java.lang.IllegalArgumentException: 'other' is different type of Path
        at java.base/sun.nio.fs.WindowsPath.relativize(WindowsPath.java:400)
        at java.base/sun.nio.fs.WindowsPath.relativize(WindowsPath.java:42)
        at com.puppycrawl.tools.checkstyle.utils.CommonUtil.relativizePath(CommonUtil.java:267)
        at com.puppycrawl.tools.checkstyle.Checker.acceptFileStarted(Checker.java:379)
        at com.puppycrawl.tools.checkstyle.Checker.processFiles(Checker.java:293)
        ... 5 more
Checkstyle ends with 1 errors.

sgold@LAPTOP-O31T4N20 MINGW64 ~/My Documents/NetBeansProjects/Acorus (master)
$

I expect Checkstyle to report no errors.


Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions