Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-445

ResolverUtil cannot find packages in file URLs which include the '+' character

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-beta9
    • Fix Version/s: 2.0-rc1, 2.0
    • Component/s: Core
    • Labels:
      None
    • Environment:

      Debian Squeeze and Gentoo
      Java 7u25

      Description

      I work on an application whose version number includes a '+' character which becomes part of the filename for the jars created in the build process. This application uses several custom log4j2 plugins contained in the jar which are discovered via the packages tag in the xml Configuration. We also generate a plugin map using the exec-maven-plugin command documented in the Extending log4j section of the log4j2 documentation. This command prints the following during the build:
      ERROR StatusLogger Could not search jar file '/src/program-1.2.3 build127/util/target/util-1.2.3 build127.jar' for classes matching criteria: annotated with @Plugin file not found
      The actual path to the jar is '/src/program-1.2.3+build127/util/target/util-1.2.3+build127.jar'

      I examined the source for ResolverUtil and in the method findInPackage (line 225), URLDecoder.decode is called unilaterally even for file: URLs. The javadoc for this class says the character + is converted to space, which is inappropriate for a file: URL.

        Attachments

          Activity

            People

            • Assignee:
              remkop@yahoo.com Remko Popma
              Reporter:
              abaldocchi Anthony Baldocchi
            • Votes:
              4 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 1h
                1h
                Remaining:
                Remaining Estimate - 1h
                1h
                Logged:
                Time Spent - Not Specified
                Not Specified