在Java Shebang脚本中加载库

在Java Shebang脚本中加载库,第1张

在Java Shebang脚本中加载库

这在OpenJDK <=中 通常不起作用

11.0.7
。目前尚不清楚这是否是错误,是否已修复。有一个开放的错误报告:

https://bugs.openjdk.java.net/browse/JDK-8242911

--class-path
至少使用OpenJDK
12.0.2
和来指定作品
14.0.1
。因此,我假设对Java 12进行了一些改进以解决此问题。

因此问题中的那行 应该 可以工作,不需要更改:

#!/usr/lib/jvm/jdk-11/bin/java --source 8 --class-path /home/imaskar/.m2/repository/commons-prec/commons-prec/1.11/commons-prec-1.11.jar

其他答案和注释中提到的其他事项的一些注意事项:

  • --source
    必须是 第一个参数。在shebang文件中,第一行被视为
    #!$COMMAND $ONE-SINGLE-ARGUMENT
    。因此,shell不会将
    $ONE-SINGLE-ARGUMENT
    空格分隔。因此,Java启动器将在参数启动时将其分隔为空白,
    --source
    并进一步处理其他参数。
  • 我无法完全解释muttonUp的工作示例。我怀疑这与macOS的使用有关。也许用过的外壳已经分解了shebang参数。
  • 因此,此问题可能仅限于某些外壳。我已经使用Ubuntu
    bash
    和进行了测试
    dash


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5055524.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存