2010-12-09 12 views
1

Ich heruntergeladen Clojure 1.2 https://github.com/downloads/clojure/clojure/clojure-1.2.0.zip, extrahiert es unter/Library-Verzeichnis, erstellte CLOJURE_HOME, hinzugefügt $ CLOJURE_HOME/Skript zu meinem $ PATH.Ist Clojure auf diese Weise installierbar?

Wenn ich versuche CLJ oder repl Skripts ausführen, die unter Skript-Verzeichnis befinden, erhalte ich diese Fehlermeldung:

Exception in thread "main" java.lang.NoClassDefFoundError: jline/ ConsoleRunner Caused by: java.lang.ClassNotFoundException: jline.ConsoleRunner at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

Ok, jline.jar ist in der CLASSPATH nicht so geprüft I CLJ und repl Skripte:

CLASSPATH=src/clj:test:test-classes:classes/:script/jline-0.9.94.jar:../clojure-contrib/target/clojure-contrib-1.2.0-SNAPSHOT.jar 

if [ -z "$1" ]; then 
    exec java -server jline.ConsoleRunner clojure.main 
else 
    SCRIPT=$(dirname $1) 
    export CLASSPATH=$SCRIPT/*:$SCRIPT:$CLASSPATH 
    exec java -Xmx3G -server clojure.main "$1" "[email protected]" 
fi 

ich heruntergeladen jline.jar unter $ CLOJURE_HOME/script, aber ich bin immer noch die gleichen Fehler.

Das führte mich zu der Frage:
Was ist die Rolle von https://github.com/downloads/clojure/clojure/clojure-1.2.0.zip überhaupt?
Soll es zur Installation von Clojure verwendet werden? oder nur um clojure.jar zu bauen und zu bekommen?
Ich bemerkte, dass niemand über die Installation von Clojure auf diese Weise redet.
Fehle ich etwas?

+0

Versuchen Sie das? http://StackOverflow.com/Questions/3218961/Clojure-Lein-Repl-with-Jline/3223271#3223271 – koddo

Antwort

1

Clojure muss als JVM-Sprache mit dem JVM-Klassenpfad umgehen. Das macht es etwas unhandlich und verwirrend. Anstatt es selbst so zu installieren, probiere einige Tools wie cljr und cake aus. Ich schrieb einen Blog-Post über diese, die hilfreich sein könnten: http://blog.raynes.me/?p=48

Zusammengefasst: cljr Check out, cake und leiningen.

Die meisten Menschen in der Clojure-Community haben Clojure nicht installiert. Die meisten Leute benutzen ein Build-Tool und/oder cljr. Es macht nicht viel Sinn, Clojure an einem zentralen Ort zu installieren, wenn Sie zwangsläufig ein Abhängigkeitsmanagement benötigen, und überall werden Jars kopiert. In jedem Fall ist es viel einfacher, ein Tool den Klassenpfad für Sie behandeln zu lassen.

+0

Ja genau, Clojure Entwickler verwendet, um ein Build-Tool oder IDE-Integration zu verwenden. – Chiron

+0

Huh? Sie verwenden immer noch Build-Tools und IDE/Texteditor-Integration. Das war der Punkt meiner Antwort. :> – Rayne

0

die clojure.zip Datei vorhanden ist, damit die Leute, die Tools schreiben einen Platz für ihre Werkzeuge, um die Teile, die sie brauchen;)

Für Menschen nicht schreiben Werkzeuge, die sie entweder arbeiten an/mit der neuesten Niederlassung von Github und so bekommen sie Clojure mit einem git ziehen oder sie verwenden die oben genannten Liningen, Kuchen, Cljr, gegen den Uhrzeigersinn (Eclipse), La Clojure (Intellij) oder Netbeans.

Verwandte Themen