0

Clojure を試してみたいのですが、ここからの最初のステップに問題があります。Leiningen を使用して Clojure プロジェクトをセットアップすることを提案しています。

ダウンロードして実行するleinと、次のように表示されます。

Error: dl failure on line 732
Error: failed /Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/Contents/Home/jre/lib/client/libjvm.dylib, because dlopen(/Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/Contents/Home/jre/lib/client/libjvm.dylib, 10): no suitable image found.  Did find:
    /Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/Contents/Home/jre/lib/client/libjvm.dylib: mach-o, but wrong architecture

調査の結果、この libjvm.dylib のコピーが x86 用にビルドされていることがわかりました。x86_64用に構築されたものが必要だと思います。新しいjvmをダウンロードしてインストールしました。ここでそれらを見ることができます:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (7):
    1.7.0_b126+, x86_64:    "OpenJDK 7" /Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/Contents/Home
    1.7.0_b126+, i386:  "OpenJDK 7" /Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/Contents/Home
    1.7.0_12, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home
    1.6.0_43-b01-447, x86_64:   "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_43-b01-447, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_26-b03-383, x86_64:   "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0_26-b03-383.jdk/Contents/Home
    1.6.0_26-b03-383, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0_26-b03-383.jdk/Contents/Home

使用したいlibjvm.dylibのコピーは/Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/...

しかし、これを使用するようにライニンゲンに指示する方法がわかりません。実際にはライニンゲンではないと思いますが、そのファイルが何かをダウンロードするために使用しているものは何でも. JAVA_HOME/Library/Java/JavaVirtualMachines/OpenJDK-1.7.0-20110203.jdk/を変更したり、このディレクトリの名前を/Library/Java/JavaVirtualMachines/jdk.old.foo.

4

2 に答える 2

0

Mac 上の Java 7 は(少なくとも私の目的では) 依然としてかなり壊れており、マシン上に Java 7 を搭載するだけで、通常は問題なく動作する Apple 提供の Java 6 が台無しになる可能性があります。Java 7 のインストールをすべて削除し (おそらくログアウト/再起動)、コマンドラインから Java 6 が実行されるかどうかを確認します (java -version と入力)。次のようなものが表示された場合:

$ java -version
java version "1.6.0_43"
Java(TM) SE Runtime Environment (build 1.6.0_43-b01-447-11M4203)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01-447, mixed mode)

もしそうなら、あなたは行ってもいいです。JDK 7 を削除した後、Mac でClojure の作業を続行できるようになりました。

于 2013-03-15T03:14:52.107 に答える
-1

次の手順を再確認してください。

  1. lein を /usr/bin/lein にコピーします
  2. chmod 755 /usr/bin/lein
  3. lein repl
于 2013-03-15T02:39:03.070 に答える