[JBoss JIRA] (ARQ-1875) JaCoCo extension only works for simple use cases
by Leonardo Loch Zanivan (JIRA)
[ https://issues.jboss.org/browse/ARQ-1875?page=com.atlassian.jira.plugin.s... ]
Leonardo Loch Zanivan commented on ARQ-1875:
--------------------------------------------
I'm using Arquillian JaCoCo 1.0.0.Alpha7 with JDK 8u20 and WildFly 8.1.0.Final in a couple of web apps and I didn't had any issue.
They're Java EE 7 web apps which uses JAX-RS, EJB, JPA, but no WS.
IMHO I think it's a WildFly component issue, it's supposed to run with Java 8 and will cause other compatibility issues with libraries which requires ASM 5+.
> JaCoCo extension only works for simple use cases
> ------------------------------------------------
>
> Key: ARQ-1875
> URL: https://issues.jboss.org/browse/ARQ-1875
> Project: Arquillian
> Issue Type: Bug
> Components: Extension - Jacoco
> Affects Versions: jacoco_1.0.0.Alpha7
> Reporter: John Ament
>
> 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:
> {quote}
> 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 more
> 13: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" => {"jboss.deployment.unit.\"api-webapp.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"api-webapp.war\".INSTALL: JBAS018733: Failed to process phase INSTALL of deployment \"api-webapp.war\"
> Caused by: javax.xml.ws.WebServiceException: java.lang.reflect.UndeclaredThrowableException
> Caused by: java.lang.reflect.UndeclaredThrowableException
> Caused by: java.lang.NoSuchMethodException: org.objectweb.asm.MethodWriter.visitLabel(org.objectweb.asm.Label)"},
> "JBAS014771: Services with missing/unavailable dependencies" => ["jboss.deployment.unit.\"api-webapp.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"api-webapp.war\".beanmanager]"]
> {quote}
> My jboss-deployment-structure.xml looks like this:
> {code}
> <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>
> {code}
> 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.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)