You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Anthony Baldocchi (JIRA)" <ji...@apache.org> on 2013/11/08 05:08:17 UTC

[jira] [Updated] (LOG4J2-445) ResolverUtil cannot find packages in paths whose URL includes the '+' character

     [ https://issues.apache.org/jira/browse/LOG4J2-445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Anthony Baldocchi updated LOG4J2-445:
-------------------------------------

    Attachment: resolver-util-file-with-plus.patch

proposed fix for ResolverUtil.findInPackage

> ResolverUtil cannot find packages in paths whose URL includes the '+' character
> -------------------------------------------------------------------------------
>
>                 Key: LOG4J2-445
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-445
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.0-beta9
>         Environment: Debian Squeeze and Gentoo
> Java 7u25
>            Reporter: Anthony Baldocchi
>         Attachments: resolver-util-file-with-plus.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> 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.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org