问题
I am using a local maven repository to house some code I am using to develop a project. I have cited this repository in my project.clj
file, and am now able to rely on local jars in this way (how to do this in a previous question of mine).
Since I am actively developing these projects, I have my project.clj
file looking for the LATEST
version. But, in order to update a dependency, I still have to increment the version number of that dependency and then run lein install
to build it to the maven repository.
Does leiningen have a way to do this where this is automatically done for me when I build the project that depends on things from the maven repo? Can lein just look for those things and rebuild them as needed?
回答1:
If you want to develop two projects in parallel, with one depending on the other, you can use symlinks in a checkouts
directory to avoid having to install snapshots all the time.
To quote from the Leiningen README:
Q: I want to hack two projects in parallel, but it's annoying to switch between them.
A: Use a feature called checkout dependencies. If you create a directory called checkouts in your project root and symlink some other project roots into it, Leiningen will allow you to hack on them in parallel. That means changes in the dependency will be visible in the main project without having to go through the whole install/switch-projects/deps/restart-repl cycle. Note that this is not a replacement for listing the project in :dependencies; it simply supplements that for tighter change cycles.
回答2:
Are your dependencies version snapshots? Maven should update all *-SNAPSHOT dependencies on build automatically.
来源:https://stackoverflow.com/questions/8411750/automating-leiningen-local-dependency-management