2016-09-29 8 views
1

Ich versuche derzeit, XML-Dateien in ein komplett anderes Format zu konvertieren, indem ich IntelliJ Community Edition + Saxon zum Schreiben und Debuggen des Stylesheets verwende. Ich habe bereits Saxon-HE 9.7.0-5 als oberste Modulabhängigkeit. Das Ausführen der Stylesheets mit dem XSLT-Runner funktioniert gut, aber wenn ich versuche, es zu debuggen, bekomme ich einige Fehler.Debuggen von XSLT mit Intellij und Saxon - nicht unterstützter Transformer

Wenn ich keine VM Argumente angeben erhalte ich:

java.lang.UnsupportedOperationException: Unsupported Transformer: net.sf.saxon.jaxp.TransformerImpl 
at org.intellij.plugins.xsltDebugger.rt.engine.local.LocalDebugger.prepareTransformer(LocalDebugger.java:98) 
at org.intellij.plugins.xsltDebugger.rt.engine.local.LocalDebugger.<init>(LocalDebugger.java:51) 
at org.intellij.plugins.xsltDebugger.rt.engine.remote.DebuggerServer$1.<init>(DebuggerServer.java:55) 
at org.intellij.plugins.xsltDebugger.rt.engine.remote.DebuggerServer.<init>(DebuggerServer.java:55) 
at org.intellij.plugins.xsltDebugger.rt.engine.remote.DebuggerServer.create(DebuggerServer.java:71) 
at org.intellij.plugins.xsltDebugger.rt.XSLTDebuggerMain.start(XSLTDebuggerMain.java:53) 
at org.intellij.plugins.xslt.run.rt.XSLTRunner.main(XSLTRunner.java:143) 

Wenn ich die VM-Argumente angeben

-Dxslt.transformer.type = Saxon

als here empfohlen, ich bekommen folgender Fehler:

javax.xml.transform.TransformerException: The URI http://www.w3.org/2005/xpath-functions does not identify an external Java class 

Hat jemand anderes dies erfahren?

+0

Ich habe keine Erfahrung darin, XSLT-Stylesheets mit dem IntelliJ-Plugin zu debuggen, aber es scheint von diesen Nachrichten, dass der verwendete XSLT-Prozessor Saxon 6.5.5 ist. Siehe http://stackoverflow.com/questions/11651209/xpath-functions-does-not-identify-an-external-java-class –

+0

Danke, ich nahm an, dass was passiert ist. Was mich verwirrte war, dass die Kommentare auf der Plugin-Seite [linked] (https://plugins.jetbrains.com/plugin/1818?pr=) darauf hinweisen, dass XSLT 2.0 unterstützt wird. –

Antwort

0

IntelliJ IDEA Unterstützt Saxon 9 Debugging bis Saxon 9.3.0.11.

Ab Saxon 9.4.0.0 die net.sf.saxon.lib.TraceListener Schnittstelle eingeführt Bremsänderungen net.sf.saxon.lib.TraceListener#open() =>net.sf.saxon.lib.TraceListener#open(Controller), die nie von JetBrains angepasst wurde.

Da Maven Artefakte für 9.3 schwer zu bekommen sind, möchten Sie es vielleicht manuell von SF bekommen.

https://sourceforge.net/projects/saxon/files/Saxon-HE/9.3/

In Bezug auf Ihre Stack-Trace; Es hat eine andere Geschichte, führt aber letztendlich dazu, zu 9.3 zurückzukehren.

Ab heute scheint 9.3 die neueste Version zu sein, die mit der aktuellen Version IntelliJ 2017.1.2 funktioniert.

Verwandte Themen