5

我想用这个插件

addSbtPlugin("net.ground5hark.sbt" % "sbt-concat" % "0.1.8")

连接我的资产。

我有 3 组:

Concat.groups := Seq(
  "concat_main.css" -> group(Seq(
    "stylesheets/bootstrap.min.css",
    "stylesheets/font-awesome.css",
    "stylesheets/totem/sidebar/component.css",
    "stylesheets/main.min.css"
  )),
  "concat_main.js" -> group(Seq(
    "javascripts/jquery-2.1.0.min.js",
    "javascripts/bootstrap.min.js",
    "javascripts/totemPage/sidebar/modernizr.custom.js",
    "javascripts/totemPage/respond.min.js",
    "javascripts/totemPage/html5shiv.js",
    "javascripts/totemPage/sidebar/classie.js",
    "javascripts/main.js"
  )),
  "concat_noel.js" -> group(Seq(
    "javascripts/totemPage/ouibounce-modal.js",
    "javascripts/ouibounce_modal.js",
    "javascripts/homePage.js",
    "javascripts/totemPage/jquery.cookie.js",
    "javascripts/embed.js"
  ))
)

Concat.parentDir := "public/main/javascripts"

pipelineStages in Assets := Seq(concat, uglify, digest, gzip)

文件是在dev中生成的,我可以访问

<link rel="stylesheet" href="@routes.Assets.versioned("javascripts/concat_main.css")">
<script src="@routes.Assets.versioned("javascripts/concat_main.js")" type="text/javascript"></script>

但是activator start我有一个404。

4

1 回答 1

5

sbt-web 文档中,您可以阅读:

如果您需要开发环境中的 pipelineStages 生成的资产(在播放运行期间),那么您可以将 pipelineStages 的范围限定为 Assets 配置。

资产中的 pipelineStages := Seq(myPipelineTask)

这就是您所做的,将pipelineStages键范围设置为Assets 配置。但是,这仅适用于开发模式。为了在生产模式下运行管道,您必须将pipelineStages范围内的键设置为全局配置。在您的情况下,这将如下所示:

pipelineStages := Seq(concat, uglify, digest, gzip)
于 2014-12-06T10:33:25.550 回答