使用以下说明:
http://www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/
我在本地存储库中安装了一些本地jar。
当我想更新项目中的jar时,我将jar重新安装到存储库中,然后运行lein deps。我发现不知何故,jar在我的项目中没有更新。即使我rm -rf libs文件夹中的所有内容,也不会拾取新的jar。我能够让它工作的唯一方法是更改jar的名称。
有点奇怪,因为即使我删除了旧jar的所有痕迹(据我所知),这也会发生 - lein是否隐藏了libs的快照/缓存?
答案 0 :(得分:30)
Leiningen使用maven进行依赖管理。 Maven默认将其repo存储在
中$HOME/.m2/repository
在leiningen版本2之前,依赖项将被复制到<projecthome>/lib
,但版本2及更高版本会构建一个直接指向存储库的类路径。
所以删除你当地的maven repo中的jar,你应该强制(重新)下载。
或者,知道对于快照依赖项,maven将每天只检查一次新版本的快照(默认情况下),这很有用。 在maven中,您可以使用-U标志强制它。我不认为莱宁根会揭露这一点,但你可以...... 。 (但请参阅巴里 - 沃克的回答)
# force update of snapshots before starting repl
$ lein -U repl
答案 1 :(得分:9)
在lein
2中,您可以使用-U
标记,例如:
lein -U jar
答案 2 :(得分:0)
删除.m2文件夹。它将重新提取。