Java 不可变本地maven存储库
当使用Java 不可变本地maven存储库,java,maven,clojure,repository,Java,Maven,Clojure,Repository,当使用lein install或例如boot pom jar install时,Clojure项目被打包在jar中并安装到本地maven存储库中。存储为多个JAR的文件夹结构,例如在~/.m2 这些安装是可变的,这意味着特定版本的项目(例如,0.1.0)可以在项目内部发生更改后通过调用相同的命令来覆盖,但不更改版本 当推送到clojars之类的公共存储库时,这是不可能的。我想只有快照版本可以覆盖现有的推送 在本地存储库中已经具有这种不变性不是很理想吗?有没有办法将其存档?为此,我运行了一个AWS
lein install
或例如boot pom jar install
时,Clojure项目被打包在jar中并安装到本地maven存储库中。存储为多个JAR的文件夹结构,例如在~/.m2
这些安装是可变的,这意味着特定版本的项目(例如,0.1.0
)可以在项目内部发生更改后通过调用相同的命令来覆盖,但不更改版本
当推送到clojars之类的公共存储库时,这是不可能的。我想只有快照版本可以覆盖现有的推送
在本地存储库中已经具有这种不变性不是很理想吗?有没有办法将其存档?为此,我运行了一个AWS实例的副本,不过在您自己的计算机上运行它是有意义的。大部分好处(除了防止丢失此计算机)都具有较低的延迟。价格也不错 为什么这是可取的?另外,顺便说一句,Clojars快照版本比您想象的更不可变;有关更多详细信息,请参阅。有趣的链接。让我想到这一点的是,让一个项目不可变并不意味着让它向所有人公开。当然,让某些东西对自己来说是不变的可能听起来有点愚蠢,但有时可能会有所帮助。但如果有更多的人参与呢。好的,我明白了——在这种情况下,我们最好设置一个只能由一群人访问的远程回购。也许这真的有两个问题:它是否有意义,以及它在技术上是否/如何可能。