LoginSignup
12
13

More than 5 years have passed since last update.

gradleでnpmとかyarnのプロジェクトもまとめてビルドする

Posted at

JavaやJVM言語で開発するとき、mavenやgradleを使ってビルドしています。最近はmavenからgradleを利用するケースが多いですね。一方でフロントエンド側の開発はnpmやyarnを使ってビルドします。その上で、gulpとかwebpackとか…。

npmやyarnでのビルドをgradleに統合するには、gradle-node-pluginがあります。gulpを使えば、かなり細かく統合できますが、npmやyarnでビルドツールを構築していれば、お手軽に統合できます。

build.grade

プラグインを設定するだけでnpmやyarnのコマンドを叩けます。
build.gradleは最低限、次のように記述するだけで動きます。

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }

    dependencies {
        classpath "com.moowork.gradle:gradle-node-plugin:1.2.0"
    }
}


plugins {
    id "com.moowork.node" version "1.2.0"
}

apply plugin: 'com.moowork.node'

実行

npmを使う場合です。yarnの場合はnpmと書いているところをyarnに読み替えてください。

npm install

gradle npm_install

npm build

gradle npm_build

npm run build

gradle npm_run_build

npm start

gradle npm_start

gradle buildとの統合

npmコマンドのラッパとしてだけでなく、javaのコードのビルド前にnpmのビルドを自動で走らせたりできます。build.gradleに次のように書きます。

classes dependsOn npm_build

おわり

とても簡単にgradleと統合できます。コマンド一発ですべてビルドできていいですね。

12
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
13