Java par défaut de JAXB mise en œuvre est choisie au-dessus de mon classpath

J'ai écrit une application java qui utilise JAXB pour XSL transformations. J'ai inclus le saxon9.jar dans mon classpath afin que je puisse utiliser XSLT 2.0, plutôt que de XSLT 1.0 sur la ligne de commande.

java -classpath ./lib/saxon9.jar:./ -jar myApp.jar

J'ai inclus le code dans mon XSL pour signaler le XSLT utilisé.

<xsl:comment><xsl:text >
</xsl:text>XSLT Version: <xsl:value-of select="system-property('xsl:version')" /> <xsl:text >
</xsl:text>XSLT Vendor: <xsl:value-of select="system-property('xsl:vendor')" /> <xsl:text >
</xsl:text>XSLT Vendor URL: <xsl:value-of select="system-property('xsl:vendor-url')" /> <xsl:text >
</xsl:text></xsl:comment>

Des rapports.

XSLT Version: 1.0
XSLT Vendor: Apache Software Foundation (Xalan XSLTC)
XSLT Vendor URL: http://xml.apache.org/xalan-j

C'est le défaut de mise en œuvre qui fait partie de la JVM.

Comment puis-je obtenir pour utiliser le Saxon que j'ai indiqué?


Suivi:

Si aucune de ces méthodes de travail (à l'exception de la passation de la saxons pot dans la approuvé un répertoire), mais ils devraient tous avoir travaillé. Il semble que la combinaison de mon utilisation de l' "-jar myApp.jar" et de vouloir une alternative XSLT mise en œuvre étaient incompatibles. En d'autres mots...

java -Djavax.xml.transformer.TransformerFactory=net.sf.saxon.TransformerFactoryImpl -classpath ./lib/saxon9.jar:./-pot myApp.jar

...ne fonctionne pas, mais ce n'...

java -Djavax.xml.transformer.TransformerFactory=net.sf.saxon.TransformerFactoryImpl -classpath ./lib/saxon9.jar:./myApp.jar org.dacracot.myApp

...il est intéressant de noter, je n'ai même pas de spécifier l'usine et j'ai l'saxon version...

java -classpath ./lib/saxon9.jar:./myApp.jar org.dacracot.myApp

InformationsquelleAutor dacracot | 2009-02-13