The problem here is a backwards incompatibility in ASM and the fact that Groovy and the EasyMock class extension jars both depend on different (and incompatible) versions of ASM. Depending on how the order of the classpath is defined in Eclipse you will either have the TestMockClass test or the TestHiveMindBuilder class failing.
As Brian points out running the tests outside Eclipse or using HiveMind's Ant scripts from within Eclipse will work. This is because the Ant scripts set the classpath differently for the different subprojects. I hope that the EasyMock class extension version 1.2 will be released soon so that we can get rid of this annoyance. We should then also be able to use the Groovy and CGLIB jars which aren't bundled with ASM. --knut On 5/20/05, Hensley, Richard <[EMAIL PROTECTED]> wrote: > Ok, I will give that a try. I wonder if it's a class loader issue. I just > ran into the jakarta commons-logging used with log4j in tomcat. > > Richard > > -----Original Message----- > From: Brian K. Wallace [mailto:[EMAIL PROTECTED] > Sent: Thursday, May 19, 2005 3:11 PM > To: [email protected] > Subject: Re: Error in UnitTest testMockForClass > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > I've just run the entire suite and had no issues with this test. > > My two initial thoughts: > ~ 1. Make sure you're running the tests from a clean-full build > ~ 2. Try running the tests outside of Eclipse and see if the error still > persists. > > Hensley, Richard wrote: > | I'm using cglib-full-2.0.1 that was downloaded from ibiblio by hivebuild. > | Does anybody else see this unit test erroring out? > | > | -----Original Message----- > | From: James Carman [mailto:[EMAIL PROTECTED] > | Sent: Thursday, May 19, 2005 2:00 PM > | To: [email protected] > | Subject: RE: Error in UnitTest testMockForClass > | > | That doesn't look like a Javassist problem. It's a CGLIB problem. > | > | -----Original Message----- > | From: Hensley, Richard [mailto:[EMAIL PROTECTED] > | Sent: Thursday, May 19, 2005 12:06 PM > | To: [email protected] > | Subject: Error in UnitTest testMockForClass > | > | > | I'm getting an error in the testMockForClass unit test. I suspected > that my > | javassist.jar was not right, but I'm using 3.0 that was downloaded from > | ibibilio. Any other suggestions. I'm using the CVS version of Hivemind. > | > | java.lang.NoSuchMethodError: > | > org.objectweb.asm.ClassVisitor.visit(ILjava/lang/String;Ljava/lang/String;[L > | java/lang/String;Ljava/lang/String;)V > | at net.sf.cglib.core.ClassEmitter.begin_class(ClassEmitter.java:101) > | at > | net.sf.cglib.core.KeyFactory$Generator.generateClass(KeyFactory.java:205) > | at > | > net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy > | .java:63) > | at > | > net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java: > | 192) > | at > | net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:177) > | at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:149) > | at net.sf.cglib.proxy.Enhancer.<clinit>(Enhancer.java:102) > | at > | > org.easymock.classextension.MockClassControl$ClassProxyFactory.createProxy(M > | ockClassControl.java:78) > | at org.easymock.MockControl.<init>(MockControl.java:125) > | at > | > org.easymock.classextension.MockClassControl.<init>(MockClassControl.java:35 > | 6) > | at > | > org.easymock.classextension.MockClassControl.<init>(MockClassControl.java:36 > | 7) > | at > | > org.easymock.classextension.MockClassControl.createStrictControl(MockClassCo > | ntrol.java:279) > | at > | > org.apache.hivemind.test.HiveMindTestCase$ClassMockControlFactory.newControl > | (HiveMindTestCase.java:98) > | at > | > org.apache.hivemind.test.HiveMindTestCase.newControl(HiveMindTestCase.java:4 > | 77) > | at > | > org.apache.hivemind.test.TestMockClass.testMockForClass(TestMockClass.java:3 > | 3) > | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > | at > | > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 > | ) > | at > | > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl > | .java:25) > | at java.lang.reflect.Method.invoke(Method.java:324) > | at junit.framework.TestCase.runTest(TestCase.java:154) > | at junit.framework.TestCase.runBare(TestCase.java:127) > | at junit.framework.TestResult$1.protect(TestResult.java:106) > | at junit.framework.TestResult.runProtected(TestResult.java:124) > | at junit.framework.TestResult.run(TestResult.java:109) > | at junit.framework.TestCase.run(TestCase.java:118) > | at junit.framework.TestSuite.runTest(TestSuite.java:208) > | at junit.framework.TestSuite.run(TestSuite.java:203) > | at > | > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRu > | nner.java:436) > | at > | > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner. > | java:311) > | at > | > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner > | .java:192) > | > | > | --------------------------------------------------------------------- > | To unsubscribe, e-mail: [EMAIL PROTECTED] > | For additional commands, e-mail: [EMAIL PROTECTED] > | > | > | > | --------------------------------------------------------------------- > | To unsubscribe, e-mail: [EMAIL PROTECTED] > | For additional commands, e-mail: [EMAIL PROTECTED] > | > | > | --------------------------------------------------------------------- > | To unsubscribe, e-mail: [EMAIL PROTECTED] > | For additional commands, e-mail: [EMAIL PROTECTED] > | > | > | > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.5 (MingW32) > > iD8DBQFCjQ8KaCoPKRow/gARAtexAJ9DuOjRaL5LC5+ru6NmXOJmP3mAqgCdHB8P > XVYC53jG8WIzxgMaKpFJfkM= > =Q+5y > -----END PGP SIGNATURE----- > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
