1

在 Play 2.1.x 及更高版本中,您可以通过向 Build.scala 添加如下指令来使用本机 coffeescript 编译:

coffeescriptOptions := Seq("native", "/opt/local/bin/coffee -p")

这是对速度的一个非常好的改进,但是当咖啡二进制文件不存在时它会中断,例如在部署到 heroku 时。

您可以仅在开发模式下设置该选项吗?这样我就可以获得开发和生产的速度是一次性成本。

如果我们处于生产或开发模式,Build.scala 似乎还没有信息

4

1 回答 1

1

我尚未对其进行测试,但您可能想尝试使用Multi Buildpack来组合Node.js BuildpackScala Buildpack。Node.js buildpack 应该允许您引入 Coffee Script 二进制文件,然后 Scala buildpack 会执行 Play 构建。

要开始,您可以这样做:

$ heroku config:add BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi.git

$ cat .buildpacks
https://github.com/heroku/heroku-buildpack-nodejs.git
https://github.com/heroku/heroku-buildpack-scala.git

然后你需要添加一个package.json带来coffee-script依赖的:

{
  "dependencies": {
    "coffee-script": "1.2.x"
  }
}

您还需要更新/opt/local/bin/coffeeNPM 删除二进制文件的路径。它可能在$HOME/node_modules/coffee-script/bin/coffee.

于 2013-04-23T17:01:55.367 回答