# 其它问题说明 ## Clone项目后找不到judy-plugin插件依赖 Clone项目后,同步Gradle时找不到judy-plugin插件依赖,有是可能代码中引用的为最新的版本,存在于本地仓库(没有添加至版本控制),且并没有及时发布至jcenter仓库导致。 解决方案: 同步Gradle之前,根目录build.gradle脚本文件中(classpath 'com.zly.judy:judy-plugin:x.x.x')降低版本至jcenter仓库最新发布版本后,再执行Gradle同步即可。 ###### PS:*如果想依赖最新版本,执行上述方案后,再执行一次右侧边栏gradle(Gradle projects) ---> :judy-plugin ---> Tasks ---> upload ---> 双击uploadArchives 生成本地仓库,在将插件依赖版本改回至最新,重新同步Gradle即可。(该问题我会尽可能避免)* ## 自定义服务类约束 * 只支持java,不支持kotlin。 * 需要存在package xxx.xxx.xxx; * 方法返回类型、方法形参类型、注解、接口必须在基础库中能导入引用,否则生成的中间层接口会无法引用。 ###### *PS:以上约束除第一条外其余的理论上在实际开发中不会出现。* ## Build或运行是偶现出现找不到符号的错误(已解决) 该问题是在修改服务类与生成中间层相关改动后(比如修改了参数类型、返回类型等),直接build(run或打包)时,compile${XXX}JavaWithJavac 任务为UP-TO-DATE,导致构建失败,提示JudyBridge中间层接口找不到符号。 > compileDebugJavaWithJavac这个任务是用来把java文件编译成class文件,输出的路径是app/build/intermediates/classes/debug #### 解决方案 **方案一** 修改服务类后先执行generatorJudyBridge一次再build。 ###### *PS:如果只修改服务类的方法体,则不影响* **方案二(不推荐)** 开启alwaysCompileJava配置 ``` //参考ConfigExtension judyConfig { alwaysCompileJava true //总是编译java文件(默认值:false 关闭) 该任务相对比较耗时,不推荐开启该配置 } ```