6
votes

ClasscastException en casting dtmmanagerdefault dans dtmmanager pendant Maven Jaxb Codegen

J'ai un problème étrange lorsque vous essayez d'exécuter une construction Maven qui utilise le plugin Jaxb2 pour faire Jaxb CodeGen (voir StackTrace ci-dessous). Le mieux que je puisse comprendre est qu'il existe une implémentation de DTMManager qui est en cours de classe à partir d'un pot différent de celui de XALAN-2.7.1; Cependant, j'ai vérifié que la classe de classe utilisée pour exécuter la JAXB: générer un objectif n'a que le seul XALAN-2.7.1.jar contenant un DTMManager ou un dtmmanagerdefault - donc je n'ai donc aucune idée de ce que d'autre pourrait se mettre en route .

Un point de données final: Notre construction Spécifie un profil "instantané ', qui ne sert vraiment que de jarer les sources (à l'aide de Maven-Source-plugin) et de les publier comme des artefacts. Le scénario de défaillance que j'ai décrit ci-dessus seul se produit lorsque ce profil est spécifié en plus de la valeur par défaut.

J'utilise Maven 2.2.1 courir sur le JDK 1.6 de Sun 1.6. 0_21 sur Linux X64 (Fedora 13) - voir ci-dessous la stacktrace pour l'info 'mvn -v'.

Des idées sur ce que le problème peut être et / ou sur la façon de le déboguer? Cela m'a fait du chagrin depuis quelques jours et il bloque maintenant des progrès: ( xxx

mvn -v: xxx < / p>


0 commentaires

3 Réponses :


13
votes

La solution consiste à rechercher toutes les dépendances sur Xalan et Xercesimpl dans la classe de classe. Ces dépendances devraient être exclues.

mis à jour fort> p>

J'ai trouvé une réponse comme celle-ci - voir http://www.mail-archive.com/dev@qpid.apache.org/msg07295.html P>

Had a look at this closely and figured it was due to a classpath class
due to Sun bundling an older version of Xalan jar.
I have disabled this test until we come up with a decent solution.

Rajith


2 commentaires

Bonjour, tu peux expliquer comment puis-je faire ça? J'ai le même problème avec Debian + JBoss et je ne peux pas le réparer sous Linux, mais fonctionne bien sur Windows / Mac. Merci.


Exécuter {dépendance MVN: arborescence> dépendances.txt} Ajoutez ensuite exclure à vos dépendances pour les bocaux qui doivent être exclus.



4
votes

Pour exclure le xalan et xercesimpl dépendances dans Maven: xxx

Voir aussi https://community.jboss.org/wiki/freemarkerandjbossas7 .


0 commentaires

0
votes

Pour moi, régler à la suite de la propriété JVM a fonctionné.

-Dorg.apache.xml.dtm.DTMManager=org.apache.xml.dtm.ref.DTMManagerDefault


0 commentaires