Android Studio を使用すると、Android モジュールと Java モジュールがあります。Java モジュールでは、AutoValue を使用して不変クラスを生成したいと考えています。
すべて正常に動作しているように見えます (ファイルは Java モジュールで生成されます) が、Android プロジェクトでこれらのファイルにアクセスできません。助言がありますか?
app\build.gradle
apply plugin: 'com.android.application'
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':domain')
}
ドメイン\build.gradle
plugins {
id 'net.ltgt.apt' version '0.6'
}
apply plugin: 'java'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.auto.value:auto-value:1.2'
apt 'com.google.auto.value:auto-value:1.2'
}
ドメイン/MyLocation.java
import com.google.auto.value.AutoValue;
@AutoValue
abstract class MyLocation {
abstract String name();
@AutoValue.Builder
abstract static class Builder {
abstract Builder name(String _name);
abstract MyLocation build();
}
}
ドメイン モジュール (Java モジュール) をビルドすると、「AutoValue_MyLocation」ファイルが次の場所に生成されることがわかります。
\domain\build\generated\source\apt\main\my\package\domain\AutoValue_MyLocation.java
ただし、生成されたクラスを Android モジュールのどこでも使用できません。