Pregunta

He descargado Clojure 1.2 https://github.com/downloads/ clojure / clojure / clojure-1.2.0.zip , extraída bajo / directorio de la biblioteca, CLOJURE_HOME creado, agregado $ CLOJURE_HOME / script para mi $ PATH.

Cuando estoy tratando de ejecutar secuencias de comandos CLJ o repl que se encuentran bajo el directorio de los scripts, estoy recibiendo este error:

Excepción en hilo "principal" java.lang.NoClassDefFoundError: jline / ConsoleRunner Causado por: java.lang.ClassNotFoundException: jline.ConsoleRunner en java.net.URLClassLoader $ 1.run (URLClassLoader.java:202) en java.security.AccessController.doPrivileged (Nativo Método) en java.net.URLClassLoader.findClass (URLClassLoader.java:190) en java.lang.ClassLoader.loadClass (ClassLoader.java:307) en sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301) en java.lang.ClassLoader.loadClass (ClassLoader.java:248)

Ok, jline.jar no está en el CLASSPATH lo que he comprobado guiones CLJ y 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

He descargado jline.jar menos de $ CLOJURE_HOME / guión, pero sigo teniendo el mismo error.

Esto me lleva a la pregunta: ¿
¿Cuál es el papel de https://github.com/downloads/clojure/ clojure / clojure-1.2.0.zip de todos modos?
¿Se supone que se utilizará para instalar Clojure? o simplemente para construir y conseguir clojure.jar?
Me di cuenta de que nadie está hablando acerca de la instalación Clojure esta manera.
Me estoy perdiendo algo?

¿Fue útil?

Solución

Clojure, siendo un lenguaje JVM, tiene que lidiar con la ruta de clases JVM. Esto hace que la instalación '' es un poco difícil de manejar y confuso. En lugar de instalarlo usted mismo como esta, probar algunas herramientas como cljr y pastel. Escribí un post sobre esto que podría ser útil: http://blog.raynes.me/?p = 48

En resumen: Salida cljr , torta , y Leiningen .

La mayoría de las personas en la comunidad Clojure no tienen Clojure 'instalado'. La mayoría de la gente usa una herramienta de construcción y / o cljr. No tiene mucho sentido para instalar Clojure a un lugar central cuando, inevitablemente, vas a la gestión necesidad de dependencia, y los tarros se copiará a todas partes de todos modos. En cualquier caso, es mucho más fácil dejar que un mango de la herramienta de la ruta de clase para usted.

Otros consejos

existe el archivo clojure.zip para que las personas que escriben herramientas tendrán un lugar para sus herramientas para conseguir las piezas que necesitan;)

Para las personas no escribir herramientas que están ya sea trabajando en / con la última rama de GitHub y por lo que obtener Clojure con un git pull o que están usando lo anterior liningen mencionado, pastel, cljr, en sentido antihorario (Eclipse), la clojure ( intellij), o netbeans.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top