When running mvn verify on Sling Scripting Groovy with the most recent version 
of the maven-failsafe-plugin the following exceptions are emitted from the ITs 
(leveraging Pax-Exam):

[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.083 s 
<<< FAILURE! - in 
org.apache.sling.scripting.groovy.it.tests.GspScriptEngineFactoryIT
[ERROR] 
initializationError(org.apache.sling.scripting.groovy.it.tests.GspScriptEngineFactoryIT)
  Time elapsed: 0.004 s  <<< ERROR!
org.ops4j.pax.exam.TestContainerException: java.lang.IllegalArgumentException: 
Could not resolve version for groupId:org.apache.sling 
artifactId:org.apache.sling.testing.paxexam by reading the dependency 
information generated by maven.
        at 
org.apache.sling.scripting.groovy.it.tests.GspScriptEngineFactoryIT.configuration(GspScriptEngineFactoryIT.java:43)
Caused by: java.io.FileNotFoundException: File 
[META-INF/maven/dependencies.properties] could not be found in classpath
        at 
org.apache.sling.scripting.groovy.it.tests.GspScriptEngineFactoryIT.configuration(GspScriptEngineFactoryIT.java:43)

The reason for that is that "META-INF/maven/dependencies.properties" is only 
contained in "target/classes" but not in the actual bundle. m-f-p though uses 
the actual JAR in the classpath which does not contain the output from 
target/classes/META-INF/maven/dependencies.properties (being generated 
org.apache.servicemix.tooling:depends-maven-plugin) since 
https://issues.apache.org/jira/browse/SUREFIRE-855.
The dependencies.properties file is evaluated in 

We could solve this issue in two ways:
1) Add META-INF/maven/dependencies.properties to the actual bundle JAR. For 
that a custom Include-Resource instruction must be added to the 
maven-bundle-plugin 
(http://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html#include-resource).
2) Add this file as dedicated entry to the m-f-p classpath 
(http://maven.apache.org/components/surefire/maven-failsafe-plugin/examples/configuring-classpath.html)
 via the additionalClasspathElements configuration.

I would propose to use 2).
WDYT?
Konrad

Reply via email to