3

Play フレームワーク 2.3.6 と Web ライブラリの依存関係に Webjars を使用しています。つまり、私の build.sbt には "org.webjars" % "angularjs" % "1.2.26" のようなものが含まれています。Javascript ソースを醜くするために、pipelineStages := Seq(rjs, uglify, digest, gzip) を build.sbt に追加しました。

現在、Play の 'stage' または 'dist' タスクを実行すると、すべての Javascript ファイル、つまり Webjar ライブラリのファイルも醜くなっているように見えます。
[情報] Uglify2 ファイル: /target/web/rjs/build/lib/angularjs/angular.js

縮小版が既に存在するため、外部の Webjar ライブラリからのソースはそのままにしておくことを期待していました。これに関する 1 つの問題は、uglify プロセスに時間がかかりすぎることです。醜化プロセスをスピードアップするにはどうすればよいですか?

4

2 に答える 2

1

Javascript のビルド手順を高速化するには、次の 2 つの方法があります。

  • export SBT_OPTS="$SBT_OPTS -Dsbt.jse.engineType=Node"を実行する前にnode.jsをインストールして設定しactivatorます。デフォルトの Javascript エンジンの代わりに node.js を使用すると、非常に高速になります。詳細はこちら: Play 2.3 への移行、 sbt-webに関するセクションを参照

  • ビルド手順をカスタマイズします。

    • build.sbt に追加して縮小を無効にします。RjsKey.optimize := "none"
    • build.sbt に追加することで、醜さを制限します。includeFilter in uglify := GlobFilter("myjs/*.js"),

オプションの詳細については、これらのプラグインの github サイトを参照してください。

sbt-uglify

sbt-rjs

于 2014-11-09T19:19:10.790 に答える