[ http://jira.codehaus.org/browse/MNG-4514?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Bentmann closed MNG-4514. ---------------------------------- Resolution: Not A Bug Assignee: Benjamin Bentmann This is a bug in the plexus-resources component (cf. [r8418|http://fisheye.codehaus.org/changelog/plexus/plexus-components/trunk/plexus-resources?cs=8418]), not Maven. Calling {{ClassLoader.getResource()}} when the resource name has a leading slash only works in Maven 2.x due to buggy/non-standard classloaders of ClassWorlds. Try this with a regular URLClassLoader and see it fail. > Loading resource from plugin dependency using Plexus ResourceManager fails > with leading slash > --------------------------------------------------------------------------------------------- > > Key: MNG-4514 > URL: http://jira.codehaus.org/browse/MNG-4514 > Project: Maven 2 & 3 > Issue Type: Bug > Components: Class Loading, Dependencies, Plugins and Lifecycle > Affects Versions: 3.0-alpha-5 > Reporter: Peter Lynch > Assignee: Benjamin Bentmann > Attachments: mng-4514-IT.zip > > > When a maven plugin tries to load a resource(file) from a plugin dependency > defined in a project pom file and the path to that resource begins with > 'slash' / then the resource is not found. The code uses the Plexus > ResourceManagers > Example code that works in 2.2.1 and earlier and fails in Maven 3.0-alpha-5. > If resource is in root of jar and configFile begins with forward slash then > we get ResourceNotFoundException. > {code:java} > /** > * ResourceManager for getting a resource from a dependency jar > * > * @component > * @required > * @readonly > */ > private ResourceManager locator; > ... > protected void loadResource(String configFile) throws > ResourceNotFoundException > { > InputStream inStream = null; > if (configFile != null) > { > try > { > inStream = > locator.getResourceAsInputStream(configFile); > } finally > { > if (inStream != null) > { > try > { > inStream.close(); > } catch (IOException ex) > { > throw new RuntimeException( > "Should not have happended", ex); > } > } > } > } > } > {code} > Will attach IT test. -- 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