2011-01-27 9 views
7

Estoy tratando de usar el Base 64 functions presente en el paquete de códec Apache Commons. Estoy usando Leiningen, y tienen esto en mi project.clj:¿Cómo uso la biblioteca Apache Commons Codec de Clojure?

:dependencies [[org.clojure/clojure "1.2.0"] 
       [commons-codec/commons-codec "1.4"]] 

Leiningen detecta correctamente el .jar apropiado. Sin embargo, no puedo entender qué clase realmente necesito importar. He intentado todas las variaciones de

(ns my-project.core 
    (:import (org.apache.commons.codec.binary Base64))) 

pero nada parece funcionar. ¿Qué nombre de clase debería usar para esto?

+0

Tu código funciona para mí. ¿Está incluyendo el .jar descargado en su 'CLASSPATH'? –

+0

Igual que brian, creando un proyecto limpio de leiningen con sus trabajos de configuración. –

Respuesta

1

Whoops. Parece que solo estaba llamando a la clase de forma incorrecta. Lo siguiente funcionó bien después de la línea :import anterior: (.decode (Base64.) s). Gracias por las respuestas, a todos.

1

Recomendaría ir al grano y comprobar dónde llega la goma a la carretera. Asegúrese de que Leiningen, de hecho, coloque el jar correcto en el directorio lib de su proyecto. Abra el tarro y mire adentro y vea que la clase que está buscando está allí. Si la ruta a esa clase en el contenedor debe coincidir con la ruta de su declaración de importación.

Cuestiones relacionadas