java.lang.NoClassDefFoundError: Failed resolution of: Lorg/jacoco/agent/rt/internal_14f7ee5/Offline

瀏覽次數:2,454 次
跳到第一則未讀訊息

loesc...@gmail.com

未讀,
2016年8月22日 中午12:53:542016/8/22
收件者:JaCoCo and EclEmma Users
I'm currently using Jacoco in Android with Gradle Build Tools 2.1.3 and Gradle(wrapper) 2.14.1. I get the following when running my instrumentation tests:

java.lang.NoClassDefFoundError: Failed resolution of: Lorg/jacoco/agent/rt/internal_14f7ee5/Offline;
at com.ourapp.next.conversation.SomeList.SomeListViewModel.$jacocoInit(SomeListViewModel.java)
at com.ourapp.next.conversation.SomeList.SomeListViewModel.<init>(SomeListViewModel.java)
at com.ourapp.next.conversation.SomeList.SomeListAdapterTest.<clinit>(SomeListAdapterTest.java:26)
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:217)
at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:266)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:263)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:27)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:59)
at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.jacoco.agent.rt.internal_14f7ee5.Offline" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.ourapp.next.debug.test-1/base.apk", zip file "/data/app/com.ourapp.next.debug-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
... 30 more
Suppressed: java.lang.ClassNotFoundException: org.jacoco.agent.rt.internal_14f7ee5.Offline
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 31 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

Any suggestions?

Marc R. Hoffmann

未讀,
2016年8月22日 下午1:21:542016/8/22
收件者:jac...@googlegroups.com
Looks like you use offline instrumentation (which is actually required
if you want to run your tests on Android) but jacocoagent.jar is missing
on your classpath. Or jacocoagent.jar is a different version then the
JaCoCo version to instrument your classes.

Regard,
-marc
--
Marc Hoffmann
hoff...@mountainminds.com
_______________________________________________
Mountainminds GmbH & Co. KG

Nussbaumstr. 4 * 80336 Muenchen * Germany
Phone/Fax +49-700-68664637 * 0700-MTNMINDS

Registergericht Muenchen * HRA 80201
Mountainminds Verwaltungs GmbH
Registergericht Muenchen * HRB 143183
Geschaeftsfuehrer Marc Hoffmann

Greg Loesch

未讀,
2016年8月22日 下午4:28:482016/8/22
收件者:jac...@googlegroups.com
Hm... do you have any tips to help troubleshoot this?

--
You received this message because you are subscribed to a topic in the Google Groups "JaCoCo and EclEmma Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jacoco/K0DYIo0ekHk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jacoco+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jacoco/79a1c9d6-e94d-e6b3-02b3-f85e9c205d43%40mountainminds.com.
For more options, visit https://groups.google.com/d/optout.

Marc R. Hoffmann

未讀,
2016年8月22日 下午4:38:212016/8/22
收件者:jac...@googlegroups.com
No idea about Gradle and Android. First thing I would check is whether jacocoagent.jar is contained in the path given by the error message:

Didn't find class "org.jacoco.agent.rt.internal_14f7ee5.Offline" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/data/app/com.ourapp.next.debug.test-1/base.apk", zip file "/data/app/com.ourapp.next.debug-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
Regards,
-marc
You received this message because you are subscribed to the Google Groups "JaCoCo and EclEmma Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jacoco+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jacoco/CAG0Kj9eqt4bGipDxfojQCHdmYP7HFPC1p3_kkcc%3DYoQVcOJASw%40mail.gmail.com.

yajvane

未讀,
2016年10月16日 凌晨1:41:472016/10/16
收件者:JaCoCo and EclEmma Users
Hi Greg/Marc,

I'm hitting the same exception even after adding "jacocoagent.jar" to classpath in surefire plugin.

pom.xml (surefire - plugin configuration):
                        <plugin>
                                <groupId>org.apache.maven.plugins</groupId>
                                <artifactId>maven-surefire-plugin</artifactId>
                                <configuration>
                                        <forkmode>once</forkmode>
                                        <additionalClasspathElements>
                                             <additionalClasspathElement>jacocoagent.jar</additionalClasspathElement>
                                        </additionalClasspathElements>
                                </configuration>
                        </plugin>

Renamed the "org.jacoco.agent-0.7.7.201606060606-runtime.jar" (from local maven repository) to "jacocoagent.jar" and kept that in the same folder where this pom.xml is residing.

Exception seen on console:

#############
Number of foreign imports: 1

import: Entry[import  from realm ClassRealm[maven.api, parent: null]]

-----------------------------------------------------

        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:166)
        ... 21 more
Caused by: java.lang.NoClassDefFoundError: org/jacoco/agent/rt/internal_6da5971/Offline
        at com.cisco.ise.ups.modelframework.hibernate.OracleNamingStrategy.$jacocoInit(OracleNamingStrategy.java)
        at com.cisco.ise.ups.modelframework.hibernate.OracleNamingStrategy.<clinit>(OracleNamingStrategy.java)
        at sun.misc.Unsafe.ensureClassInitialized(Native Method)
        at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
        at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:142)
        at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1082)
        at java.lang.reflect.Field.getFieldAccessor(Field.java:1063)
        at java.lang.reflect.Field.get(Field.java:387)
        at com.cisco.ise.ups.build.WorkflowRunnerMojo.namingStrategyInstance(WorkflowRunnerMojo.java:335)
        at com.cisco.ise.ups.build.WorkflowRunnerMojo.setupWorkflowEnvironment(WorkflowRunnerMojo.java:514)
        at com.cisco.ise.ups.build.WorkflowRunnerMojo.execute(WorkflowRunnerMojo.java:816)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        ... 21 more
Caused by: java.lang.ClassNotFoundException: org.jacoco.agent.rt.internal_6da5971.Offline
        at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
        at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
        at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
        ... 33 more
[ERROR]
###############

Can you please let me know how to resolve this ? Please let me know if I should be sending complete pom !!!

-Regards,
Kesav.

Greg Loesch

未讀,
2016年10月16日 凌晨2:40:242016/10/16
收件者:JaCoCo and EclEmma Users
Not sure I'll be able to help with specifics, but the solution to my problem was found here - https://code.google.com/p/android/issues/detail?id=220640.

yajvane

未讀,
2016年10月16日 凌晨3:26:222016/10/16
收件者:JaCoCo and EclEmma Users、loesc...@gmail.com
Unable to correlate that solution (using Gradle) to my need (maven project). 
回覆所有人
回覆作者
轉寄
這個會話群組已被鎖定
你無法在已鎖定的會話群組內回覆及執行操作。
0 則新訊息