Question

J'ai téléchargé Clojure 1.2 https://github.com/downloads/ clojure / clojure / clojure-1.2.0.zip , il extrait sous / répertoire de la bibliothèque, CLOJURE_HOME créé, a ajouté $ CLOJURE_HOME / script à mon PATH $.

Quand je suis en train d'exécuter des scripts de CLJ ou repl qui se trouvent sous le répertoire de script, je reçois cette erreur:

  

Exception dans le thread "principal" java.lang.NoClassDefFoundError: JLine /   ConsoleRunner   Causée par: java.lang.ClassNotFoundException: jline.ConsoleRunner           à java.net.URLClassLoader 1.run $ (URLClassLoader.java:202)           à java.security.AccessController.doPrivileged (Méthode natif)           à java.net.URLClassLoader.findClass (URLClassLoader.java:190)           à java.lang.ClassLoader.loadClass (ClassLoader.java:307)           à sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301)           à java.lang.ClassLoader.loadClass (ClassLoader.java:248)

Ok, jline.jar est pas dans le CLASSPATH donc j'ai vérifié scripts CLJ et repl:

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" "$@" 
fi

J'ai téléchargé jline.jar sous $ CLOJURE_HOME / script, mais je reçois toujours la même erreur.

Cela me conduit à la question suivante:
Quel est le rôle de https://github.com/downloads/clojure/ clojure / clojure-1.2.0.zip de toute façon?
Est-il censé être utilisé pour installer Clojure? ou juste pour construire et obtenir clojure.jar?
J'ai remarqué que personne ne parle de l'installation Clojure cette façon.
Am quelque chose que je manque?

Était-ce utile?

La solution

Clojure, étant une langue JVM, doit faire face à la machine virtuelle Java classpath. Cela fait de l'installation "un peu de trop compliqué de et confus. Plutôt que d'installer vous-même comme ça, essayer quelques outils comme cljr et gâteau. J'ai écrit un billet de blog sur ce qui pourrait être utile: http://blog.raynes.me/?p = 48

En résumé: Départ cljr , gâteau et Leiningen .

La majorité des membres de la communauté Clojure n'ont pas Clojure « installé ». La plupart des gens utilisent un outil de construction et / ou cljr. Il ne fait pas beaucoup de sens pour installer Clojure à un endroit central où, inévitablement, vous allez à la gestion besoin de dépendance, et des pots seront copiés partout autour de toute façon. Dans tous les cas, il est beaucoup plus facile de laisser une poignée d'outils classpath pour vous.

Autres conseils

le fichier clojure.zip existe afin que les gens qui écrivent des outils auront une place pour leurs outils pour obtenir les pièces dont ils ont besoin;)

Pour les personnes ne pas écrire les outils dont ils sont soit en travaillant sur / avec la dernière branche de github et ils obtiennent Clojure avec un git pull ou ils utilisent mentionné ci-dessus liningen, gâteau, cljr, sens anti-horaire (éclipse), la clojure ( IntelliJ), ou netbeans.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top