我已仔细按照the official guide中的说明在Eclipse ADT 3.8中启用注释。
即注释处理和工厂路径已正确配置:
我的Android应用程序编译成功。当然,它也会运行,但由于预期由Butter Knife初始化的视图null
,我得到明显的NPE。
如果我将配置更改为生成,例如.apt_generated_foo_bar
,Eclipse将创建该文件夹。但是空了。
关于如何说服Eclipse在.apt_generated
中创建适当的类的任何想法?
答案 0 :(得分:3)
这个问题(和答案)重复了这个问题:Butterknife does not create anything in .apt_generated directory
首先,您需要确保拥有 Android 项目和not an Android library项目,因为Butterknife使用a different approach处理库项目。
要执行此操作,请点击Project Properties
并转到Android
部分。有关详细信息,请参阅the Android documentation:
然后在 project / .factorypath 中检查这些设置:
<factorypath>
<factorypathentry kind="WKSPJAR" id="/PotlatchClient/libs/butterknife-5.1.2.jar" enabled="true" runInBatchMode="false"/>
</factorypath>
项目/ .settings / org.eclipse.jdt.apt.core.prefs :
eclipse.preferences.version=1
org.eclipse.jdt.apt.aptEnabled=true
org.eclipse.jdt.apt.genSrcDir=.apt_generated
org.eclipse.jdt.apt.reconcileEnabled=true
项目/ .settings / org.eclipse.jdt.core.prefs :
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.processAnnotations=enabled
最后在Eclipse中进行刷新并清理以进行完全重建。
另一个建议的问题是将JDK更改为1.7意味着您只能定位Kitkat(4.4)或更高版本。
答案 1 :(得分:1)
我有同样的问题, 已更改:项目&gt;属性&gt; JavaCompiler&gt; CompilerComliance级别从1.6到1.7 现在清洁项目, 它工作了