Clojure es instalable de esta manera?
-
10-10-2019 - |
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?
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.