Pregunta

¿Existe un flujo de trabajo típico para piratear las bibliotecas de Clojure?

Digamos que tengo mi aplicación "foo" que se basa en una "barra" de biblioteca de terceros, que se obtuvo de un repositorio, e incluía en el proyecto Foo a través de lein deps.

Luego, digamos que quiero hackear la biblioteca "bar", así que lo cloné de Github.

Ahora, me gustaría piratear mi "bar" clon local mientras al mismo tiempo trabajar en la aplicación "foo" que depende de ello. Me gustaría que todos los archivos de origen para "barra" se abran en emacs junto con todos los archivos de origen en "foo", usando una instancia de swank.

¿Hay una forma fácil de hacer esto?

Quiero alterar mi ambiente Y no el proyecto. Por lo tanto, no quiero editar Project.clj para "foo" para lograr esto.

¿Esto requiere establecer el classpath antes de comenzar lein swank, ¿O hay un mejor camino?

¿Fue útil?

Solución

Crear un checkouts Directorio en su proyecto FOO y cree un enlace simbólico a su clon del proyecto de barra dentro de este directorio.

Para citar el Preguntas frecuentes de Leiningen:

Q: Quiero hackear dos proyectos en paralelo, pero es molesto cambiar entre ellos.
A: Si crea un directorio llamado Decides en su proyecto Root y Symlink algunas otras raíces del proyecto, Leiningen le permitirá piratearlos en paralelo. Eso significa que los cambios en la dependencia serán visibles en el proyecto principal sin tener que pasar por todo el ciclo Install/Switch-Projects/Deps/ReinSart-Replepl, y la copia en los checkouts tendrá prioridad sobre la dependencia declarada en Project.clj. Tenga en cuenta que esto no es un reemplazo para enumerar el proyecto en: Dependencias; Simplemente complementa eso por conveniencia.

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