当前位置: 首页 > 知识库问答 >
问题:

如何强制莱因德普斯重新获取本地罐子/库

陆晓博
2023-03-14

使用以下说明:

http://www.pgrs.net/2011/10/30/using-local-jars-with-leiningen/

我在本地存储库中安装了一些本地 jar。

当我想更新项目中的 jar 时,我会将 jar 重新安装到存储库中,然后运行 lein deps。我发现不知何故,罐子在我的项目中没有更新。即使我 rm -rf libs 文件夹中的所有内容,也不会拾取新的 jar。我能够做到这一点的唯一方法是更改罐子的名称。

这有点奇怪,因为即使我删除了旧罐子的所有痕迹(据我所知),这种情况也会发生 - lein是否隐藏了库的快照/缓存?

共有3个答案

墨高杰
2023-03-14

删除 .m2 文件夹。它将重新取回。

汤承允
2023-03-14

lein 2 中,您可以使用 -U 标志,例如:

lein -U jar
养振濂
2023-03-14

Leiningen使用maven进行依赖性管理。默认情况下,Maven将其repo存储在

$HOME/.m2/repository

在leiningen版本2之前,依赖项将被复制到

因此,删除本地 maven 存储库中的 jar,您应该强制(重新)下载

或者,了解快照依赖项,maven 每天仅检查一次快照的新版本(默认情况下)会很有用。 在 maven 中,您可以使用 -U 标志强制它。我不认为莱宁根暴露了这一点,但你可以这样做...... (但请看巴里-沃克的答案)

# force update of snapshots before starting repl
$ lein -U repl

 类似资料:
  • 在运行Java8和Gradle6.3的Linux机器上,我需要构建一个由库混合而成的fat jar,一些库来自Maven Central,其他库来自位于存储库根部的本地目录,以及我的和: 运行和之后,如果我可以看到JAR中没有包含任何依赖项。 我的最终目标是使我的项目可执行为。我该怎么解决这个?

  • 问题内容: 我有一个页面正在从第三方(新闻提要)加载脚本。脚本的url在加载时动态分配(根据第三方代码)。 然后从中加载的脚本创建并加载具有新闻提要中各种内容的元素,并以漂亮的格式等将元素加载到其中(传入ID“ div1287”,以便脚本知道在何处加载内容)。 唯一的问题是,它只会加载一次。我希望它每n秒重新加载一次(从而显示新内容)。 所以,我想我会尝试一下: div清除后,我得到警报,但是没有

  • 问题内容: 我在程序开始时,根据数据库中的某些内容,以编程方式在JScrollPane中添加了许多组件(JPanels,JLabels等)。 似乎对于GUI(?)而言,此过程太快了,因此JScrollPane并不总是正确更新,即,即使内部JPanel大于可见区域,滚动条也不可见。 调整窗口大小(JFrame)可以解决此问题,因为我认为Java在调整组件大小时会重新打印它们。 作为测试,我添加了一个

  • 我在Kubernetes是个新手。我想知道在kubernetes环境中最好的生产部署场景是什么。 在过去的学派中,我习惯于将Web服务器(例如Nginx或Apache)放在DMZ层,而将其放在其他层(我们称之为层)。这样,只有web服务器在DMZ上,恶意攻击只能在web服务器VM上进行。 据我所知,K8S部署不再需要这种方法;这是因为K8S自己处理网络、吊舱和流量。所以我在考虑最确定的部署方案。

  • 我有一个名为并行的 Clojure 项目,这取决于另一个名为“消息传递”的 Clojure 项目,我使用 命令生成消息传递 0.1.0-SNAPSHOT.jar文件,然后我按照页面上的说明 https://github.com/kumarshantanu/lein-localrepo 尝试将本地 jar 依赖项添加到并行项目中。 首先,我在并行项目的根目录下创建了一个名为lib的目录。然后,我使用

  • 我使用的是ZF2 skeleton应用程序,它有一个.gitignore,可以防止外部库提交到git。在调试过程中,我喜欢在库的源代码中到处更改内容,以了解如何工作。如果这些是版本控制的,将很容易将它们恢复到原始状态。 如何强制Composer重新安装特定的框架,以便再次获得新的未修改副本? PS:请不要建议删除.gitignore文件,因为它存在是有原因的;它阻止我的第三方库进入我的应用程序存储