[ http://jira.codehaus.org/browse/SUREFIRE-545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=181616#action_181616 ]
Gabriele Columbro commented on SUREFIRE-545: -------------------------------------------- Anyone has something to say about this? :) Thanks in advance. > Enable custom JAR and resource loading in Surefire classpath > ------------------------------------------------------------ > > Key: SUREFIRE-545 > URL: http://jira.codehaus.org/browse/SUREFIRE-545 > Project: Maven Surefire > Issue Type: Improvement > Components: classloading > Affects Versions: 2.4.3 > Environment: any > Reporter: Gabriele Columbro > Priority: Minor > Attachments: SurefireResourceLoading.diff > > > There are situations in which you would want to add to surefire classpath an > arbitrary resourceSet to have your tests running properly. > To clarify, there are cases in which maven transitive dependency management > cannot be enough for having your classpath populated properly, cases in which > not even the <additionalClasspathElement> of surefire can be enough, unless > you pollute your pom with a huge numer of <additionalClasspathElement> lines > (tough to write and maintain). > Maybe an example can clarify the situation: > if you're working with a legacy Webapp, say a WAR built with Ant, that has > no POM, but you want to use Maven features to improve testing and to provide > a standard approach to lifecycle management. You'd like be able to test in > isolation (outside of a container) against the webapp classpath, but while > WEB-INF/classes can be loaded with <additionalClasspathElement>, you'd name > each and every JAR in the WEB-INF/lib to have the classpath properly populate. > This is infact my case when trying to support Alfresco ECM [1] testing with > my maven archetypes [2]. > So, after playing around with Java6 classpath wildcard loading [3] (which > seems not to be honored by surefire), I wrote this little patch which adds to > surefire a new configuration parameter: > <resources> > <resource> > .... > </resource> > </resources> > which allows to load arbitrary resources in the surefire classpath, using the > usual directory/include/exclude format supported by the Maven > DirectoryScanner. This solves my problems as now I can happily load the > Alfresco's WEB-INF/lib/*.jar resourceSet. > It does not check for duplicates so it's left to the developer to check it > the maven transitive classpath clashes with the added resources (as this > should be discouraged, I think it should stay like this). > I understand this should be discouraged, but I could not find a way to work > this around (until Alfresco release his POM [4]) in the current surefire > setup. > WDYT? Shall I write a test case or you think is never going to make it to the > trunk? ;) > [1] http://www.alfresco.com/ > [2] http://repository.sourcesense.com/maven2-sites/maven-alfresco-archetypes > [3] http://www.javabeat.net/qna/90-adding-jars-to-the-classpath/ > [4] https://issues.alfresco.com/jira/browse/ETHREEOH-1090 -- 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