私が取り組んでいる Play 2.4.6 アプリでは、stage/dist タスクでアセットが複製されています。
基本的に、これは 3 つのサブモジュールを備えたアプリであり、すべてのアセットがメインpublic
フォルダーに存在します。私はsbt-web
有効にしておらず、webjars の依存関係もありません (しかし、jar の内容から、Play はそれらをどこかで使用している可能性があります)。
使用すると、フォルダーPlayKeys.externalizeResources := false
に2つのjarファイルが作成されます。lib
- myapp-server.myapp-server-0.9.6-assets.jar
- myapp-server.myapp-server-0.9.6.jar
最初のものには、アセットが含まれている必要があります。2 番目にはメイン プロジェクトのクラス ファイルが含まれている必要がありMETA-INF/resources/webjars/myapp-server/0.9.6
ますが、パブリック フォルダーのすべてのアセットを含むフォルダーもあります。
使用するPlayKeys.externalizeResources := true
とまったく同じ動作になりますが、代わりに余分なMETA-INF/resources
フォルダーが存在しmyapp-server.myapp-server-0.9.6-externalized-resources.jar
ます。
では、その余分なアセット フォルダーを削除するにはどうすればよいでしょうか? 私はたくさんのアセットを持っているので、余分なフォルダーがパッケージサイズに大きく追加されます...