添加Native Google Maps库后Gradle构建Android项目失败求助
解决Codename One Native Google Maps Android本地Gradle构建失败问题
可行解决方案:
禁用自动生成module-info.class
报错指向module-info.class解析失败且cls变量为null,核心原因大概率是Native Google Maps库与JavaFX 17.0.16的模块声明冲突。在Codename One项目的build.gradle中添加配置,阻止自动生成该文件:codenameone { android { disableModuleInfo = true } }排除JavaFX依赖的模块冲突
尝试在依赖声明中排除可能冲突的模块,或者改用兼容JDK8的非模块化JavaFX依赖(Codename One默认基于JDK8构建):implementation('org.openjfx:javafx-swing:17.0.16') { exclude group: 'org.openjfx', module: 'javafx-swing' } implementation('org.openjfx:javafx-web:17.0.16') { exclude group: 'org.openjfx', module: 'javafx-web' }或直接替换为JDK8兼容版本:
implementation 'org.openjfx:javafx-swing:17.0.16:jdk8' implementation 'org.openjfx:javafx-web:17.0.16:jdk8'清理构建缓存并重新生成项目
- 删除项目下的
android/target目录:C:\Users\hmmmm\Desktop\maptest\android\target - 删除Gradle本地缓存目录:
C:\Users\hmmmm\.gradle\caches - 重新执行Codename One的Android项目生成命令,再尝试Gradle构建。
- 删除项目下的
调整Native Google Maps库版本
尝试升级或降级Native Google Maps库版本,找到与JavaFX 17.0.16兼容的版本,规避模块系统层面的冲突。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

