3

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 モジュールのどこでも使用できません。

4

1 に答える 1