2017-07-10 3 views
3

Clojure(1.8.0または他のバージョン)のコピーをMaven Centralまたは公式サイトからダウンロードすると、バージョン1.7.0-RC1になります。例えばClojure JARのすべてのバージョンは、実際のバージョンにかかわらずClojure-1.7.0-RC1であると報告しています

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

また、これは、実際には、実行されているバージョンであるようです。 1.8.0で追加された関数(具体的にはstring/starts-with?)は、repl(インポート後)で使用できないためです。

(shasumによって検証された)ファイルの同一のコピーが別のラップトップにダウンロードされると、正しいバージョンが実行されます。

私は1.8.01.9.0-alpha17、および1.5.0-RC2を含むいくつかのバージョンでこれを確認しました。すべてが1.7.0-RC1と報告されています。

追加情報:MacOSのバージョン10.12.3を使用して

$ java -version Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

+0

再生できません。 sha1sum(s)が続く - 'unzip〜/ Downloads/clojure-1.8.0.zip'そして' java -jar clojure-1.8.0/clojure-1.8.0.jar Clojure 1.8.0 user => ' –

+0

' 313066c972b6b00f390674bf0e9f732c07f205a4 clojure-1.8.0/clojure-1.8.0.jar' –

+0

'93e9dd5559225d219b557b418bfcabd5c2a2ade6〜/ダウンロード/ clojure-1.8.0.zip' –

答えて

3

Clojure .jarの別の(より古い)バージョンは、Clojure 1.7.0-RC1"Java Extension" on macOSとしてインストールした場合、コマンドライン(またはクラスパス)で指定されたものをロードして上書きすることがあります。実際には、1.7.0 .jar/Library/Java/Extensions/または~/Library/Java/Extensions/(ホームディレクトリの下)に配置した結果が報告されています。

単純な解決策は、拡張フォルダからjarファイルを削除することです。

それは、このような問題につながることができますようJava Development Guide for Macは、実際に、拡張ディレクトリを使用することの危険について警告:

は、アプリケーション内のあなたの依存ライブラリのすべてではなく、Java拡張ディレクトリに頼るを含めるようにしてくださいなぜなら、その内容はバージョン管理されておらず、同じライブラリの複数のバージョンに対応できないからです。

+0

ありがとう!それが問題でした。私はそこにしばらく夢中になっていると思った。 – TinSnail

関連する問題