微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Saxon HE - XSLT 转换 - 尝试运行命令行代码时出错

如何解决Saxon HE - XSLT 转换 - 尝试运行命令行代码时出错

我正在为班级进行 XSLT 作业。说明告诉我“通过在 alldepartments.xsl 样式表中应用 getEmployees 模板来生成结果文档 horizo​​ns.xml。”

于是,我拉起终端输入:java net.sf.saxon.Transform -it:getEmployees alldepartments.xsl -o:horizo​​ns.xml

我收到错误消息:“错误:无法找到或加载主类 net.sf.saxon.Transform 引起:java.lang.classNotFoundException:net.sf.saxon.Transform”

我尝试对问题进行故障排除,并在 https://www.saxonica.com/html/documentation10/about/gettingstarted/gettingstartedjava.html

找到了检查软件是否正常工作的说明

所以我在命令行中输入了以下内容

java -cp c:\saxon\saxon-he-10.5.jar net.sf.saxon.Query -t -qs:"current-date()"

终端输出的是:函数 dquote>

老实说,除了解压缩我下载的文件并将其放在我的 Mac (Big Sur 11.3.1) 上的应用程序文件夹中之外,我不确定如何安装 Saxon。我试图通过右键单击并选择打开来打开 .jar 文件,但它给了我错误消息:

“操作无法完成。无法执行/Library/internet plugins/javaappletplugin.plugin/contents/home/bin/java:没有那个文件或目录”

这是我的 JRE 版本:“16.0.1” 2021-04-20 Java(TM) SE 运行时环境(构建 16.0.1+9-24) Java HotSpot(TM) 64 位服务器 VM(构建 16.0.1+9-24,混合模式,共享)

这是我的 JDK 版本:javac 16.0.1

照片是SaxonHE10-5J文件夹里面的照片,我尝试运行saxon-he-10.5.jar文件

我不知道为什么事情不起作用,也不知道下一步该怎么做。我真的很感激一些循序渐进的帮助。请告诉我您需要哪些其他信息来帮助我。

SaxonHE10

解决方法

好吧,您的第一次尝试失败了,因为 Saxon 不在类路径上。我想你已经解决了。要解决这个问题,您需要类似的东西:

java -cp c:\saxon\saxon-he-10.5.jar net.sf.saxon.Transform -it:getEmployees alldepartments.xsl -o:horizons.xml

恐怕您的第二次尝试(运行 XQuery)对我来说有点神秘。但是我很困惑,当您说您在 Mac 上运行时,为什么要在 -cp 选项中使用 Windows 文件名?如果您已将 Saxon 安装到 Mac 上的应用程序文件夹中,则类路径应类似于 /Users/Nikofem/Applications/Saxon/saxon-he-10.5.jar

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。