maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Karkola (JIRA)" <j...@codehaus.org>
Subject [jira] Created: (MCHECKSTYLE-59) Checkstyle Report fails if propertyExpansion contains file names
Date Mon, 30 Oct 2006 19:44:01 GMT
Checkstyle Report fails if propertyExpansion contains file names
----------------------------------------------------------------

                 Key: MCHECKSTYLE-59
                 URL: http://jira.codehaus.org/browse/MCHECKSTYLE-59
             Project: Maven 2.x Checkstyle Plugin
          Issue Type: Bug
    Affects Versions: 2.1
         Environment: Windows XP, JDK 1.4, Maven 2.0.4
            Reporter: Carsten Karkola


The chechkstyle plugin fails on windows plattforms, if the propertyExpansion element contains
file names like 
  mms.suppressions.file=${basedir}/../../project/resources/checkstyle/suppressions.xml
The backslashes in ${basedir} (like D:\foo\bar) are missing (D:foobar) and checkstyle fails.
It seems to be an issue with StringInputStream.

I've replaced the following old code in CheckstyleReport.java
            if ( StringUtils.isNotEmpty( propertyExpansion ) )
            {
                p.load( new StringInputStream( propertyExpansion ) );
            }

with the new Code
      if ( StringUtils.isNotEmpty( propertyExpansion ) ) {

        BufferedReader reader = new BufferedReader(new StringReader(propertyExpansion));
        String line = reader.readLine();
        while (line != null) {
          int delimPosition = line.indexOf('=');
          if (delimPosition > -1) {
            String name = line.substring(0, delimPosition).trim();
            delimPosition++;
            if (delimPosition < line.length()) {
              String value = line.substring(delimPosition).trim();
              if (value.length() > 0) {
                p.put(name, value);
                getLog().info("Property: " + name + " = " + p.getProperty(name));
              }
            }
          }
          line = reader.readLine();
        }
        reader.close();
      }

and it works.

Regards, carsten


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message