未生成Dagger2组件

时间:2017-09-20 06:40:34

标签: android dagger

我正在尝试与Dagger建立一个项目。现在,当我构建时,没有为组件生成任何Dagger *类。

Heres是我的build.gradle配置:

dependencies = [
    annotationProcessor 'com.google.dagger:dagger-compiler:2.11'
    provided            'org.glassfish:javax.annotation:10.0-b28'
    compile             'com.google.dagger:dagger:2.11'
]

和代码:

public class Person {
    private String name;

    @Inject
    public Person() {
        name = "summer";
    }

    public String getName() {
        return name;
    }
}

@Component
public interface AboutComponent {

    void inject(AboutActivity activity);
}

活动:

public class AboutActivity extends BaseActivity implements OnClickListener {
    @Inject Person mPerson;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // I can not find DaggerAboutComponent here
    }
}

我尝试重建项目以确定它是否会生成类。

1 个答案:

答案 0 :(得分:1)

最后我找到了原因。我在模块“OpenSourceLibrary”中导入Dagger依赖项,我管理第三方库。如果我将依赖项移动到AboutLibrary的模块,它的工作原理。但是我必须在每个模块中都这样做吗?