-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
jacoco_1.0.0.Alpha7
-
None
In JaCoCo Alpha 7, the tests pass on the build, however the extension itself only works if you have a very small use case. If you have a more robust test that uses database connections, external modules, you get ASM conflicts.
Here's an example output:
Caused by: java.lang.NoSuchMethodException: org.objectweb.asm.MethodWriter.visitLabel(org.objectweb.asm.Label)
at java.lang.Class.getMethod(Class.java:1773) [rt.jar:1.8.0_20]
at org.apache.cxf.common.util.ReflectionInvokationHandler.invoke(ReflectionInvokationHandler.java:85)
... 28 more13:34:21,040 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 2) JBAS014613: Operation ("deploy") failed - address: ([("deployment" => "api-webapp.war")]) - failure description: {
"JBAS014671: Failed services" =>Unknown macro: {"jboss.deployment.unit."api-webapp.war".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit."api-webapp.war".INSTALL},
"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"api-webapp.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"api-webapp.war\".beanmanager]"]
My jboss-deployment-structure.xml looks like this:
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.1"> <!-- based on https://docs.jboss.org/author/display/AS71/Class+Loading+in+AS7 --> <deployment> <exclusions> <module name="org.jboss.resteasy.resteasy-jackson2-provider"/> </exclusions> <dependencies> <module name="com.private" services="import"/> <module name="org.bouncycastle" services="import"/> <module name="org.picketlink" services="import"/> <module name="org.apache.james.mime4j" services="import"/> <module name="org.hibernate.validator" services="import"/> <module name="org.hibernate.validator.cdi" services="import"/> <module name="org.hibernate" services="import"/> <module name="org.javassist" services="import"/> <module name="org.apache.commons.http" services="import"/> <module name="org.apache.commons.email" services="import"/> <module name="org.apache.commons.lang" services="import"/> <module name="org.apache.commons.codec" services="import"/> <module name="org.apache.commons.io" services="import"/> <module name="org.apache.xerces" services="import"/> <module name="org.apache.tika" services="import"/> <module name="org.json" services="import"/> <module name="org.apache.velocity" services="import"/> <module name="org.apache.httpcomponents" services="import"/> <module name="org.apache.log4j" services="import"/> <module name="org.jboss.logmanager" services="import"/> <module name="com.google.guava" services="import"/> <module name="org.codehaus.jackson.jackson-mapper-asl" services="import"/> <module name="org.codehaus.jackson.jackson-jaxrs" services="import"/> <module name="org.bouncycastle.bcpg" services="import"/> <module name="org.jboss.resteasy.resteasy-jackson-provider" services="import"/> <module name="org.jboss.resteasy.resteasy-multipart-provider" services="import"/> <module name="org.quartzscheduler" services="import"/> <module name="org.joda.time" services="import"/> <module name="org.codehaus.jackson.jackson-core-asl" services="import" /> <!-- cxf required otherwise WS annotations will be silently ignored --> <module name="org.apache.cxf" services="import"/> <module name="org.apache.cxf.impl" services="import"/> <module name="org.picketlink"/> <module name="org.picketbox"/> <module name="javax.security.auth.message.api" /> <module name="javax.security.jacc.api" /> <module name="org.apache.ws.security"/> <module name="org.elasticsearch" services="import" meta-inf="import"/> <module name="org.camunda"/> </dependencies> </deployment> </jboss-deployment-structure>
Some of these are custom modules, usually just wrapping open source libraries. There's one private one I hid, but it doesn't have any ASM. It seems like hibernate's the culprit here.