アプリをコンパイルする方法をいくつか試しました (Java、Wicket、Zurb Foundation Sites を使用、lib-sass に依存する node-sass)。実を言うと、特に私の scss に !global フラグが含まれている場合は、すべての maven プラグインが行き止まりでした。(このフラグには基礎が付属していました。) したがって、最終的な解決策は、最初に npm でビルドし、次に maven を使用することでした。Npm は src/main/webapp/"myDir" dir にビルドされます。このディレクトリをgitで除外しました。jason ファイルには次のような行があります。
"scripts": {
....
"build-css": "node node_modules/node-sass/bin/node-sass --include-path myScssDir myScssDir/myScss.scss --output src/main/webapp/myDir/css",
....
}
次にmavenでビルドすると、ビルドされたcssが私の戦争に移動します。いくつかの助け(存在しない「myDir」ディレクトリを作成する)のために、mkdirpを使用しました。私のジェイソンには次のものがあります:
"scripts": {
"create-dirs": "mkdirp src/main/webapp/myDir/",
....
}
したがって、「npm i」を実行して、すべての依存関係をローカルに node-modules dir にインストールします。これは無視されます。
次に、「npm run create-dirs」を実行して、必要な myDir を作成します。これも gitignored です。
次に、「npm run build-css」を実行して、css-s と js-s を myDir にコンパイルします。
最後に、Maven ビルドを作成します。
hudson/jenkins ビルドを使用すると、これらを 1 つのジョブで簡単に実行できます。
私が考えることができる 1 つの改善は、maven ビルド中に ant を介して npm を実行することです。これの概念実証ができたら、また連絡します。
//もう 1 つのヒント: 企業環境および Windows7 で開発している場合、npm ビルドのシンボリック リンクにアクセス許可を追加する必要がある場合があります。npm ビルドでエラーが見つかった場合は、試してみる価値があります: https://superuser.com/questions/104845/permission-to-make-symbolic-links-in-windows-7