Wie verwende ich den RequireJS-Optimierer im Play-Framework?

Wie angekündigt, dasrjs im Spiel kann

Stellen Sie sicher, dass alle JavaScript-Ressourcen, auf die in einem WebJar verwiesen wird, automatisch aus dem jsdelivr-CDN referenziert werden. Wenn eine .min.js-Datei gefunden wird, wird diese anstelle von .js verwendet. Ein zusätzlicher Bonus ist, dass keine Änderung an Ihrem HTML-Code erforderlich ist!

Allerdings kann ich nichts davon zum Laufen bringen.

Ich habe versucht, meine Play-App im Produktionsmodus auszuführen, und alle meine Webjar-Java-Skripte werden immer noch als lokal bezeichnet.Ich sehe das @ nic.min Version von Javascript-Dateien, die in der Produktion verwendet werden.

Ich kann die Abhängigkeitsinjektion nicht für den Produktionsmodus aktivieren. Zum Beispiel, wenn ich @ spritzen wijquery in meinem Code wie folgt

define (['jquery'], function ($) {'use strict'; console.log ($. grep); return {summe: function (a, b) {return a + b;}};});

Ich kann das im Entwicklungsmodus zum Laufen bringen, aber im Produktionsmodus ist dasrjs sagte nicht

[info] Error: ENOENT, no such file or directory '/Users/khanguyen/Desktop/rjsdemo/target/web/rjs/build/js/jquery.js'
[info] In module tree:
[info]     main
[info]       app
[info] 
[info] Error: Error: ENOENT, no such file or directory '/Users/khanguyen/Desktop/rjsdemo/target/web/rjs/build/js/jquery.js'
[info] In module tree:
[info]     main
[info]       app
[info] 
[info]     at Error (native)

Offensichtlich sucht es nach dem falschen Ort für jQuery, trotz des von Webjar erzeugten Konfigurations-Setups

requirejs.config({"paths":{"jquery":["/webjars/jquery/1.11.1/jquery","jquery"]},"shim":{"jquery":{"exports":"$"}},"packages":[]})    }

um den richtigen Ort für @ zu habjquery.

Ich benutze Play 2.4.0 mitpipelineStages := Seq(rjs, digest) Setup in meiner build.sbt.

Bitte teilen Sie mir mit, wo ich etwas falsch gemacht habe.

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage