JDK 13 中的 xsl 版本 2.0?

xsl version 2.0 in JDK 13?

我正在尝试将 XSL 2.0 版与 openJDK 13 和 apache FOP 结合使用。

尽管在样式表中编写了以下代码:

<xsl:stylesheet version="2.0"
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:fo="http://www.w3.org/1999/XSL/Format" exclude-result-prefixes="fo">

...

<xsl:value-of select="system-property('xsl:version')"/>

...正在返回“1.0”

如何在此环境中获得 XSL 版本 2.0 运行?

在 Java 环境中获得 XSLT 2 或最近的 XSLT 3 支持的通常方法是将 Saxon 9 或 Saxon 10 HE 放在 class 路径上。 Saxon HE 在 SourceForge 或 Maven 上可用。我认为版本 9.8、9.9 和 10 都针对 Java 8,但应该 运行 以及后来的 Java JRE 和 JDK,因为它们保持向后兼容性。