Estoy usando lein2. Me gustaría cargar algunas ns de forma predeterminada cuando se inicia la réplica. ¿Es posible especificar en project.clj las ns que se deben cargar, cuando se ejecuta lein2 repl para ese proyecto?cómo cargar ns de forma predeterminada al iniciar la réplica
11
A
Respuesta
10
Usted encontrará una gran cantidad de respuestas en el sample project
;; Options to change the way the REPL behaves
:repl-options {;; Specify the string to print when prompting for input.
;; defaults to something like (fn [ns] (str *ns* "=> "))
:prompt (fn [ns] (str "your command for <" ns ">, master? "))
;; Specify the ns to start the REPL in (overrides :main in
;; this case only)
:init-ns foo.bar
;; This expression will run when first opening a REPL, in the
;; namespace from :init-ns or :main if specified
;; This expression will run when first opening a REPL, in the
;; namespace from :init-ns or :main if specified
:init (println "here we are in" *ns*)
El uso de un project.clj
que habían útil:
(defproject test "1.0.0"
:repl-options { :init-ns test.core
:init (do
(use 'clojure.set)
(println (union #{1 2 3} #{3 4 5}))
(use 'incanter.core)
(println (factorial 5))) }
:dependencies [[org.clojure/clojure "1.4.0"]
[incanter/incanter-core "1.3.0-SNAPSHOT"]])
Cuando el fuego de lein repl
$ lein repl
nREPL server started on port 1121
REPL-y 0.1.0-beta10
Clojure 1.4.0
Exit: Control+D or (exit) or (quit)
Commands: (user/help)
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
(user/sourcery function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Examples from clojuredocs.org: [clojuredocs or cdoc]
(user/clojuredocs name-here)
(user/clojuredocs "ns-here" "name-here")
#{1 2 3 4 5}
120.0
test.core=>
3
a veces uso la opción :injections
en project.clj
para cargar espacios de nombres. En el siguiente ejemplo se carga la foo.bar
espacio de nombres cuando se ejecuta el comando lein2
:
(defproject org.example/sample "0.1.0-SNAPSHOT"
:description "A sample project"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:injections [(use 'foo.bar)])
+1
Eso es lo que ': repl-options { : init expr} 'es para – noahlz
Cuestiones relacionadas
- 1. ASP.NET MVC cambiar la ruta predeterminada al iniciar/cerrar sesión
- 2. Cargar java.util.logging.config.file para la inicialización predeterminada
- 3. Cómo iniciar una réplica de clojure con acceso a un contenedor
- 4. Django-tastypie. Salida en JSON al navegador de forma predeterminada
- 5. Dotcloud: cómo cargar un archivo de copia de seguridad redis al iniciar
- 6. Cómo obtener la salida del registrador java al archivo de forma predeterminada
- 7. iniciar animación css3 después de cargar toda la página
- 8. Cambiar la configuración predeterminada del entorno al iniciar Visual Studio 2010
- 9. ¿Puedo buscar NS y A al mismo tiempo usando dig
- 10. Django treebeard cuáles son las diferencias entre AL, NS, MP
- 11. No se pudo cargar SystemTimer> = v1.2.0 al iniciar la aplicación de los carriles 3.0.5
- 12. Bloqueo optimista en Hibernate de forma predeterminada
- 13. constructor con un parámetro de forma predeterminada
- 14. DropDownListFor (...) seleccionando booleano falso de forma predeterminada
- 15. Objetos CF vs objetos NS
- 16. Activando un perfil de forma predeterminada
- 17. Cómo deshabilitar la actualización de complementos de Firefox al iniciar
- 18. Cómo cargar la configuración de la aplicación al objeto NHibernate.Cfg.Configuration?
- 19. wcftestclient.exe: al editar la configuración predeterminada
- 20. instalación de pip con la opción borrar de forma predeterminada
- 21. ¿Debo usar cadena Unicode de forma predeterminada?
- 22. Configuración AutoEventWireup = "false" de forma predeterminada
- 23. Python: ¿cómo puedo cambiar la ruta predeterminada al instalar módulos?
- 24. iniciar carga de archivo al seleccionar
- 25. Establecer @ Html.RadioButtonFor como comprobado de forma predeterminada
- 26. ¿Cómo puedo hacer git-pull verbose de forma predeterminada?
- 27. ¿Cómo se muestra el teclado de forma predeterminada en UITextView?
- 28. ¿Cómo iniciar la aplicación predeterminada (nativa) para un archivo dado de Java?
- 29. ¿Cómo hacer que jQuery Tablesorter ordene descender de forma predeterminada?
- 30. Hacer emacs para resaltar la sintaxis postgresql de forma predeterminada
Gracias @noahz. Quiero ser capaz de especificar lo siguiente donde las 3 instrucciones en el fn son lo que quiero ejecutar, ¿cómo hago eso?: Repl-options {: init (fn [_] (use 'ring.util.serve) (use 'mfaiz.routes) (serve mfaiz.routes/my-app))} – murtaza52
Usted acaba de definir una función, así que agregue un segundo conjunto de paréntesis y el parámetro deseado para llamarlo. '((fn [_] (println _)" foo ")' – noahlz
Lo hice y este es el error que me da - CompilerException java.lang.RuntimeException: no se puede resolver el símbolo: servir en este contexto, compilando: (NO_SOURCE_PATH: 1) – murtaza52