gpt4 book ai didi

java - 所有版本的 Clojure jar 报告为 Clojure-1.7.0-RC1,无论实际版本如何

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:34:52 25 4
gpt4 key购买 nike

当我从 Maven Central 或官方网站下载一份 Clojure(1.8.0 或任何其他版本)时,它声称是版本 1.7.0-RC1

例如:

$ java -jar clojure-1.8.0.jar
Clojure 1.7.0-RC1
用户=>

这似乎也是实际运行的版本。由于在 1.8.0 中添加的函数(特别是 string/starts-with?)在 repl 中不可用(导入后)。

当文件的相同副本(由 shasum 验证)下载到另一台笔记本电脑上时,正确的版本将运行。

我已经用多个版本验证了这一点,包括 1.8.01.9.0-alpha171.5.0-RC2。它们都报告为 1.7.0-RC1

附加信息:

$ java -version
Java(TM) SE 运行时环境(build 1.8.0_60-b27)
Java HotSpot(TM) 64 位服务器 VM(构建 25.60-b23,混合模式)

使用 macOS 版本 10.12.3

最佳答案

如果您安装了较旧的 Clojure 1.7.0-RC1<,则另一个(较旧的)版本的 Clojure .jar 可能会加载并覆盖命令行(或类路径)中指定的版本 作为 "Java Extension" on macOS .实际上,您报告的行为是由于将 1.7.0 .jar 放在 /Library/Java/Extensions/~/Library/Java/Extensions/(在您的主目录下)。

一个简单的解决方案是从 Extensions 文件夹中删除 jar 文件。

Java Development Guide for Mac实际上警告使用 Extensions 目录的危险,因为它可能导致这样的问题:

Try to include all of your dependent libraries in your application rather than relying on the Java Extensions directory, because its contents are unversioned and cannot accommodate for multiple versions of the same library.

关于java - 所有版本的 Clojure jar 报告为 Clojure-1.7.0-RC1,无论实际版本如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45003622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com