sbt (バージョン 0.9.0) を構成して、sbt でパッケージ タスクを実行するときに webapp/dist を webappResource ディレクトリとして使用し、container:start コマンドを実行するときに webapp/app ディレクトリを webappResource ディレクトリとして使用するように、次の説明に従います。
SBT で container:start タスクと package タスクに異なる webapp リソースを設定する方法
しかし、次のエラーがスローされます。
エラー: eof が必要ですが、'package' が見つかりました。 パッケージ内の webappResources := Seq(baseDirectory.value / "webapp" / "dist") ^ [エラー] 式の解析中にエラーが発生しました。
パッケージはsbt confファイルでも予約語だと思いますが、パッケージタスクの設定をオーバーライドする他の方法はありますか?
これを行う理由は、gulp を使用して webclient を管理するためです。Gulp は app フォルダーからプロジェクトを実行し、webclient プロジェクトを dist フォルダーにコンパイル (縮小など) します。開発するときは、以下で宣言されているように webapp/app フォルダーを使用します。
コンパイル中の webappResources := Seq(baseDirectory.value / "webapp" / "app")
リリースを作成するときは、最初に gulp を使用して webapp クライアントを webapp/dist にビルド (縮小など) します。次に、webapp/dist コンテンツを最終的な戦争にパッケージ化したいと考えています。
しかし、パッケージ タスクを使用する場合、上記の設定をオーバーライドして webapp/dist を使用することはできません。
また、次のような独自の構成を作成しようとしました。
コンパイル中の webappResources := Seq(baseDirectory.value / "src" / "main" / "webapp" / "app") lazy val ReleaseWarConfig = config("release-war") 拡張 (コンパイル) val root = (ファイル内のプロジェクト("."))。 configs(ReleaseWarConfig)。 settings(inConfig(ReleaseWarConfig)(webSettings): _*)。 設定( コンパイル中の webappResources := Seq(baseDirectory.value/"src"/"main"/"webapp"/"dist") ) // Compile の代わりに ReleaseConfig で webappResources も試しました。
ただし、webapp/dist ディレクトリの代わりに webapp/app ディレクトリを引き続き使用します。
どんな助けでも大歓迎です!!!!