我尝试将 sbt(版本 0.9.0)配置为在 sbt 中运行包任务时使用 webapp/dist 作为 webappResource 目录,并在运行 container:start 命令时使用 webapp/app 作为 webappResource 目录,遵循以下描述:
如何为容器提供不同的 webapp 资源:SBT 中的启动和打包任务
但它会引发以下错误:
错误:预期为 eof,但找到了“包”。 包中的 webappResources := Seq(baseDirectory.value / "webapp" / "dist") ^ [错误] 解析表达式时出错。
我猜这个包也是 sbt conf 文件中的保留字,还有其他方法可以覆盖包任务中的设置吗?
这样做的原因是我使用 gulp 来管理 webclient。Gulp 从 app 文件夹运行项目,并将 webclient 项目编译(缩小等)到 dist 文件夹。当我开发时,我使用如下声明的 webapp/app 文件夹:
编译中的 webappResources := Seq(baseDirectory.value / "webapp" / "app")
当我创建一个版本时,我首先使用 gulp 将 webapp 客户端构建(缩小等)到 webapp/dist 中。然后我想把 webapp/dist 的内容打包到最后的战争中。
但是在使用包任务时,我无法覆盖上面的设置以使用 webapp/dist。
我也尝试过像这样创建自己的配置:
编译中的 webappResources := Seq(baseDirectory.value / "src" / "main" / "webapp" / "app") 惰性 val ReleaseWarConfig = config("release-war") 扩展(编译) val root = (文件中的项目("."))。 配置(ReleaseWarConfig)。 设置(inConfig(ReleaseWarConfig)(webSettings):_*)。 设置( 编译中的 webappResources := Seq(baseDirectory.value/"src"/"main"/"webapp"/"dist") ) // 我也在 ReleaseConfig 中尝试了 webappResources 而不是 Compile ..
但它仍然使用 webapp/app 目录而不是 webapp/dist 目录。
任何帮助将不胜感激!!!!