]
Tom Jenkinson resolved JBTM-2182.
---------------------------------
Resolution: Done
Resolved in
[quickstart] NoClassDefFoundError on ArjunaJTA/maven
----------------------------------------------------
Key: JBTM-2182
URL:
https://issues.jboss.org/browse/JBTM-2182
Project: JBoss Transaction Manager
Issue Type: Bug
Components: Demonstrator
Reporter: Andrew Rubinger
Assignee: Tom Jenkinson
Fix For: 5.0.4
[INFO] --- exec-maven-plugin:1.2:exec (default-cli) @ maven ---
Exception in thread "main" java.lang.RuntimeException:
java.lang.NoClassDefFoundError: Ljavax/transaction/TransactionManager;
at
com.arjuna.common.internal.util.propertyservice.BeanPopulator.getNamedInstance(BeanPopulator.java:81)
at
com.arjuna.common.internal.util.propertyservice.BeanPopulator.getDefaultInstance(BeanPopulator.java:49)
at
com.arjuna.ats.jta.common.jtaPropertyManager.getJTAEnvironmentBean(jtaPropertyManager.java:42)
at
com.arjuna.ats.jta.TransactionManager.transactionManager(TransactionManager.java:71)
at TransactionManagerExample.main(TransactionManagerExample.java:39)
Caused by: java.lang.NoClassDefFoundError: Ljavax/transaction/TransactionManager;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2570)
at java.lang.Class.getDeclaredFields(Class.java:1903)
at
com.arjuna.common.internal.util.propertyservice.BeanPopulator.configureFromProperties(BeanPopulator.java:135)
at
com.arjuna.common.internal.util.propertyservice.BeanPopulator.getNamedInstance(BeanPopulator.java:78)
... 4 more
Caused by: java.lang.ClassNotFoundException: javax.transaction.TransactionManager
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 9 more
Probably due to Tx API being in provided scope, not included in exec:exec under
src/java/main?
[INFO] +-
org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:jar:1.0.0.Final:provided
Also: NCDFE in javax_transaction/TransactionExample:
Exception in thread "main" java.lang.NoClassDefFoundError:
org/jboss/logging/Logger
Probably wanna audit the whole module; is this not tested in CI? Would suggest
re-implementing perhaps as unit tests instead of Main classes.
From Mike: It gets run under CI regularly (and the last build was on 22-May-2014
16:13:23). I can't remember the last time it failed. You should be able to just check
out the repo and type mvn clean install from the top
From Tom: I said that we might not run exec:exec in CI as some of the QS are quite
intricate and difficult to script.