文章目录
一、报错信息
二、解决方案
一、报错信息
Android APT , 使用 注解处理器 生成 Java 代码 , 报如下错误 ;
错误: 无法访问MainActivity_ViewBinder 错误的类文件: D:\002_Project\002_Android_Learn\APT\app\build\intermediates\javac\debug\classes\kim\hsl\apt\MainActivity_ViewBinder.class 非法的类文件开始 请删除该文件或确保该文件位于正确的类路径子目录中。 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:compileDebugJavaWithJavac'. > Compilation failed; see the compiler error output for details.
二、解决方案
在 D:\002_Project\002_Android_Learn\APT\app\build\intermediates\javac\debug\classes\kim\hsl\apt\MainActivity_ViewBinder.class 目录中已经存在了一个文件 , 之前使用 ButterKnife 时生成的文件 ;
根据 完整 包名 + 类名 生成文件 , 使用的是 createClassFile API , 生成字节码文件 , 这里的用法错误 ;
// 根据 包名.类名_ViewBinder 创建 Java 文件 JavaFileObject javaFileObject = mFiler.createClassFile(packageName + "." + className);
必须使用如下方法 :
// 根据 包名.类名_ViewBinder 创建 Java 文件 JavaFileObject javaFileObject = mFiler.createSourceFile(packageName + "." + className);
眼瞎写错了 , 一般人不会点进来 , 留个错误记录 , 挂着吧 ;