我有一个生产我的工件的 sbt 项目xyz
。我想把它和它的所有依赖项一起放在 docker 容器中,以便可以使用它
coursier launch --mode offline xyz
重要的部分是准备工作应该使用来自主机的本地光标缓存。
我试过了
- 执行
sbt publishLocal
, - 然后解决我的工件依赖项(
cursier resolve xyz
), - 然后准备目录 -
local
&cache
- 通过将已解决的工件复制到其中 - 然后将这些目录复制到 docker 容器中(分别作为 coursier 缓存和常春藤本地)。
这不起作用,因为 coursier 没有在其输出中列出.pom
和.xml
文件。我尝试复制整个目录(abc/1.0.0
而不是abc/1.0.0/some.jar
),但是 AFAIK 没有可靠的方法来知道一个必须去多少个文件夹,因为 maven 和 ivy 具有不同的目录结构。