Just a guess, but maybe the geronimo-qname spec jar is getting pulled in. Try running maven with -X and verify we are not getting that jar. If we are, add an exclude.

-dain

On Dec 21, 2006, at 12:03 PM, Jeremy Whitlock wrote:

Hi All,
   I am in the process of approving OPENEJB-357.  I wanted to get the
examples tests passing before applying the tests but I'm running into some issues with Maven. When I run "mvn test" in "trunk/openejb3/ examples", I
run into the following error:

12:49:21,436 INFO  [startup] Found EjbModule in classpath:
/Users/jwhitlock/dev/java/openejb/openejb3/examples/helloworld- stateful-pojo/target/classes
12:49:22,675 FATAL [startup] OpenEJB has encountered a fatal error and
cannot be started: The Assembler encountered an unexpected error while
attempting to initialize.
java.lang.LinkageError: loader constraints violated when linking
javax/xml/namespace/QName class
       at com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl
.<clinit>(RuntimeBuiltinLeafInfoImpl.java:186)
at com.sun.xml.bind.v2.model.impl.RuntimeTypeInfoSetImpl.<init>(
RuntimeTypeInfoSetImpl.java:25)
       at
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createTypeInfoSet(
RuntimeModelBuilder.java:77)
       at
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createTypeInfoSet(
RuntimeModelBuilder.java:40)
       at com.sun.xml.bind.v2.model.impl.ModelBuilder.<init>(
ModelBuilder.java:97)
       at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.<init>(
RuntimeModelBuilder.java:43)
       at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(
JAXBContextImpl.java:345)
       at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(
JAXBContextImpl.java:217)
       at com.sun.xml.bind.v2.ContextFactory.createContext(
ContextFactory.java:76)
       at com.sun.xml.bind.v2.ContextFactory.createContext(
ContextFactory.java:55)
       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:585)
at javax.xml.bind.ContextFinder.newInstance (ContextFinder.java:210)
       at javax.xml.bind.ContextFinder.find(ContextFinder.java:368)
       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:574)
       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:522)
       at org.apache.openejb.alt.config.JaxbUnmarshaller.<init>(
JaxbUnmarshaller.java:56)
       at org.apache.openejb.alt.config.JaxbUnmarshaller.unmarshal(
JaxbUnmarshaller.java:64)
       at org.apache.openejb.alt.config.EjbJarUtils.readEjbJar(
EjbJarUtils.java:91)
at org.apache.openejb.alt.config.EjbJarUtils.<init> (EjbJarUtils.java
:63)
       at
org.apache.openejb.alt.config.DeploymentLoader.loadDeploymentsList(
DeploymentLoader.java:243)
       at
org.apache.openejb.alt.config.ConfigurationFactory.getOpenEjbConfigura tion(
ConfigurationFactory.java:146)
       at org.apache.openejb.assembler.classic.Assembler.init(
Assembler.java:99)
       at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:136)
       at org.apache.openejb.OpenEJB.init(OpenEJB.java:275)
       at org.apache.openejb.OpenEJB.init(OpenEJB.java:260)
       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:585)
       at org.apache.openejb.loader.OpenEJBInstance.init(
OpenEJBInstance.java:36)
       at org.apache.openejb.client.LocalInitialContextFactory.init(
LocalInitialContextFactory.java:53)
       at
org.apache.openejb.client.LocalInitialContextFactory.getInitialContext (
LocalInitialContextFactory.java:39)
       at javax.naming.spi.NamingManager.getInitialContext(
NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx (InitialContext.java
:247)
       at javax.naming.InitialContext.init(InitialContext.java:223)
       at javax.naming.InitialContext.<init>(InitialContext.java:197)
at org.acme.FriendlyPersonTest.setUp(FriendlyPersonTest.java: 41)
       at junit.framework.TestCase.runBare(TestCase.java:125)
       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 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:585)
       at org.codehaus.surefire.battery.JUnitBattery.executeJUnit(
JUnitBattery.java:246)
       at org.codehaus.surefire.battery.JUnitBattery.execute(
JUnitBattery.java:220)
at org.codehaus.surefire.Surefire.executeBattery (Surefire.java:204)
       at org.codehaus.surefire.Surefire.run(Surefire.java:153)
       at org.codehaus.surefire.Surefire.run(Surefire.java:77)
       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:585)
at org.codehaus.surefire.SurefireBooter.run (SurefireBooter.java:104) at org.apache.maven.test.SurefirePlugin.execute (SurefirePlugin.java
:303)
       at org.apache.maven.plugin.DefaultPluginManager.executeMojo(
DefaultPluginManager.java:412)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(
DefaultLifecycleExecutor.java:534)
       at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLif ecycle
(DefaultLifecycleExecutor.java:475)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(
DefaultLifecycleExecutor.java:454)
       at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHand leFailures
(DefaultLifecycleExecutor.java:306)
       at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegment s(
DefaultLifecycleExecutor.java:273)
       at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(
DefaultLifecycleExecutor.java:140)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java: 322)
       at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
       at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
       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:585)
at org.codehaus.classworlds.Launcher.launchEnhanced (Launcher.java
:315)
       at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode (Launcher.java
:430)
       at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

I then decide to try a pristine local Maven repository and get the
following:  (Created by running "mvn clean && mvn test -
Dmaven.repo.local=temp")

org.apache.maven.surefire.booter.SurefireExecutionException:
junit/framework/TestCase; nested exception is java.lang.NoClassDefFoundError:
junit/framework/TestCase
java.lang.NoClassDefFoundError: junit/framework/TestCase
       at java.lang.ClassLoader.defineClass1(Native Method)
       at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
       at java.security.SecureClassLoader.defineClass(
SecureClassLoader.java:124)
       at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
       at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
       at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
       at java.security.AccessController.doPrivileged(Native Method)
       at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.apache.maven.surefire.booter.IsolatedClassLoader.loadClass(
IsolatedClassLoader.java:100)
       at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.locateTestS ets(
AbstractDirectoryTestSuite.java:84)
at org.apache.maven.surefire.Surefire.createSuiteFromDefinition(
Surefire.java:147)
       at org.apache.maven.surefire.Surefire.run(Surefire.java:108)
       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:585)
       at
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(
SurefireBooter.java:225)
       at org.apache.maven.surefire.booter.SurefireBooter.main(
SurefireBooter.java:747)

Something is hokey. Surefire cannot find JUnit but JUnit is a dependency and should be on the classpath. Why do running tests against my regular
repo and a pristine temporary repository fail differently?  What is
preventing either of these from running properly? David has reproduced these behaviors as well and suggested posting this here to get some Maven
folk involved.

Take care,

Jeremy

Reply via email to