webapp包中的资源 := Seq(baseDirectory.value ..) 抛出解析表达式时出错



我尝试将 sbt(版本 0.9.0(配置为在 sbt 中运行包任务时使用 webapp/dist 作为 webappResource 目录,在运行 container:start 命令时使用 webapp/app 作为 webappResource 目录,按照以下描述:

如何在 SBT 中为容器:启动和打包任务提供不同的 Web 应用资源

但它会引发以下错误:

   错误:EOF 预期,但找到"包"。    webapp资源在包中 := Seq(baseDirectory.value/"webapp"/"dist"(                       ^    [错误]解析表达式时出错。

我想该包在 sbt conf 文件中也是一个保留字,还有其他方法可以覆盖包任务中的设置吗?

这样做的原因是我使用 gulp 来管理 Web 客户端。Gulp 从应用程序文件夹运行项目,并将 webclient 项目编译(缩小等(到 dist 文件夹中。当我开发时,我使用如下声明的 webapp/app 文件夹:

   webappResources in Compile := Seq(baseDirectory.value/"webapp"/"app"(

当我创建一个版本时,我首先使用 gulp 将 webapp 客户端构建(缩小等(到 webapp/dist 中。然后我想将 webapp/dist 内容打包到最终战争中。

但是在使用包任务时,我无法覆盖上述设置以使用 webapp/dist。

我也尝试像这样创建自己的配置:

   webapp资源在编译中 := Seq(baseDirectory.value/"src"/"main"/"webapp"/"app"(    lazy val ReleaseWarConfig = config("release-war"( extend (Compile(    val root = (file("."(中的项目(。      configs(ReleaseWarConfig(.      settings(inConfig(ReleaseWarConfig((webSettings(: _*(.      设置(        webappResources in Compile := Seq(baseDirectory.value/"src"/"main"/"webapp"/"dist"(    )    我也在ReleaseConfig中尝试了webappResources而不是Compile。

但它仍然使用 webapp/app 目录而不是 webapp/dist 目录。

任何帮助将不胜感激!!!

项目的目录布局是什么? 听起来你的 Web 应用程序资源目录在 [myproject]/webapp/dist/上,这意味着你在 [myproject]/webapp/dist/下也有 WEB-INF/和 WEB-INF/web.xml(以及各种其他可选资源(。 这是对的吗?

若要将 Web 应用程序资源目录的位置设置为 [myproject]/webapp/dist/,请将以下设置添加到 sbt 配置中:

build.sbt

webappSrc in webapp <<= (baseDirectory in Compile) map  { _ / "webapp" / "dist" }

您可以在自述文件中阅读有关此设置的更多信息。

相关内容

  • 没有找到相关文章

最新更新