Scala 带只读基目录的SBT

Scala 带只读基目录的SBT,scala,sbt,docker,sbt-revolver,Scala,Sbt,Docker,Sbt Revolver,我正在一个Docker容器中进行试验。我正在将基本目录装载为Docker卷。它工作得很好,除了一个问题:Docker不映射用户,因此我最终得到的是主机用户不拥有的project/project/和project/target/目录 我可以通过将其添加到基本目录中的build.sbt来重新定位target/目录: target := file("/data/target") 但是我不知道如何自定义在project/目录中创建的文件的位置 是否可以以任何方式创建SBT生成,其中所有生成输出都在基本

我正在一个Docker容器中进行试验。我正在将基本目录装载为Docker卷。它工作得很好,除了一个问题:Docker不映射用户,因此我最终得到的是主机用户不拥有的
project/project/
project/target/
目录

我可以通过将其添加到基本目录中的
build.sbt
来重新定位
target/
目录:

target := file("/data/target")
但是我不知道如何自定义在
project/
目录中创建的文件的位置

是否可以以任何方式创建SBT生成,其中所有生成输出都在基本目录之外创建

是否可以以任何方式创建SBT生成,其中所有生成输出都在基本目录之外创建

我认为我们没有这样的背景。您可以添加类似于
project/build.sbt

target := file("/data/meta-target")

但是它实际上可能强制
project/project/target
等等。

不,在
project/build.sbt
中分配
target
似乎不起作用。但是+1断言这是不可能的,尽管我真的希望是这样。好吧,从技术上来说,我确信这是可能的,但是你可能需要编辑一点SBT源。。。现代构建系统不支持只读源目录似乎很奇怪。不确定为什么需要设置
target
path。。。我之前构建了一个SBT容器,它与未修改的
build.SBT
文件一起工作,请参见此处:但我确实发现,目前人工制品的所有权有点混乱。docker中很少有编译器的东西,其中之一就是docker/docker本身,我从这里开始。dockerfile不错,还有jdk。但是您运行的命令
docker run-t-i-v
pwd
:/io errordeveloper/sbt:latest';编撰;退出“
创建根目录拥有的目标目录,否?如果可以将其移到卷外,则不需要使用sudo清理主机。是的,它当前被写入根目录。我不太清楚你在暗示什么,但是,我宁愿考虑实现一个构建工具插件,或者只是一个脚本,它将伪品打包成一个新的容器图像,可以上传到注册表中。我已经完成了构建器容器,这是构建所需的全部内容,下一步是将其组装成应用程序容器图像。