gpt4 book ai didi

scala - 将特定目录及其内容添加到通用目标

转载 作者:行者123 更新时间:2023-12-04 05:03:42 27 4
gpt4 key购买 nike

我正在为正在进行的Scala项目从maven切换到sbt。我曾经使用过maven程序集插件,您可以在其中将工作空间中的任何目录映射到程序集中的目标目录。我没有在sbt-native-package中找到任何等效项,值得为Universe类型提供此功能。

我了解到,通用子目录中存在的所有内容都照原样复制到了程序包中,并且像 super 按钮一样工作,但是我缺少以下代码段。

mappings in Universal += {
directory("my/local/dir") -> "static/dirInPackage"
}

我想知道是否已经可以做到这一点,在这种情况下,我很高兴知道如何做到这一点,并且如果需要,我建议我提供有关提交该部分文档的帮助。
如果没有办法进行这种自定义,那么在讨论了规范之后,我将很乐意为此提供一个补丁。

顺便说一句,辛苦了,您的打包机运行良好,谢谢!

最佳答案

与sbt-native-manager团队讨论并提出第一个“被拒绝”的拉取请求之后,下面是在build.sbt文件中进行此目录映射的方法(请参阅提供模式详细文档的拉取请求https://github.com/sbt/sbt-native-packager/pull/160):

mappings in Universal <++= (packageBin in Compile, target ) map { (_, target) =>
val dir = target / "scala-2.10" / "api"
(dir.***) pair relativeTo(dir.getParentFile)
}

为了减少上述摘要的冗长性,存在一个问题( https://github.com/sbt/sbt-native-packager/issues/161),它提出了一种更易于理解的方式来表示此目录映射:
mappings in Universal ++= allFilesRelativeTo(file(target / "scala-2.10" / "api"))

关于scala - 将特定目录及其内容添加到通用目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21551854/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com