我尝试使用Roboguice使Roboblender工作,但是编译时处理似乎没有做任何事情,AnnotationDatabaseImpl类是不生成的。(项目生成没有错误。)
我甚至创建了一个示例项目,请参阅下面。我错过了什么?(我知道gradle任务和第二个元数据只需要用于多模块项目,但是没有它们它也无法工作)。
build.gradle:
project.tasks.withType(JavaCompile) { task ->
options.compilerArgs << "-AguiceAnnotationDatabasePackageName=gk.com.roboguice_compile"
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'org.roboguice:roboguice:3.+'
provided 'org.roboguice:roboblender:3.+'
}清单:
<meta-data
android:name="roboguice.modules"
android:value="gk.com.roboguice_compile.RoboguiceBindings" />
<meta-data
android:name="roboguice.annotations.packages"
android:value="gk.com.roboguice_compile" />活动:
@ContentView(R.layout.activity_main)
public class MainActivity extends RoboActivity {
@Inject
private PresentMaker presentMaker;绑定:
public class RoboguiceBindings extends AbstractModule {
@Override
protected void configure() {
bind(PresentMaker.class).to(BirthdayPresentMaker.class);
}
}发布于 2015-04-17 12:22:39
AnnotationDatabaseImpl在那里,但只在构建目录下,而不是在源文件中。
我的错,可能每个注释处理器都是这样工作的。(虽然奇怪的是,这个项目在项目根中生成了AnnotationDatabaseImpl。)
https://stackoverflow.com/questions/29633863
复制相似问题