gradleでモジュール名を指定したくなった時にやる設定
マルチモジュールなAndroidアプリを書いている時などに、稀によくモジュールの階層が深いとか、同じディレクトリ名(例えばlib)のものが複数ある事がある。 そんな時にモジュール名を指定したくなったりするので、その設定のやり方のメモ
使いたいモジュールが
foo/bar/lib baz/lib
にあった場合 何も考えない場合は settings.gradleに
include ':app', 'foo:bar:lib', ':baz:lib'
のような記述がされて、AndroidStudio上で下図のような表示がされる
このままだと、foo,bar,bazという謎の空のモジュールがあったりして気持ち悪いので、適切な管理をしたくなる。
そういった時にsettings.gradleに
include ':app', ':bar', ':baz' project(':bar').projectDir = new File('foo/bar/lib') project(':baz').projectDir = new File('baz/lib')
と書くと
となってスッキリ
という記事にしようと思ったらAndroidStudioのimport Moduleでほぼ同じことができそうだった
ただ、この場合は親ディレクトリと同じ名前は付けられないっぽいので、親ディレクトリと同じ名前にしたい場合は一旦適当な名前を付けてからsettings.gradleを変更する必要がありそう