成功上传Library至Jitpack,但无法访问其中的方法
问题描述
我已将Library上传至Jitpack,链接为https://jitpack.io/com/github/gastsail/hzone/0.9/hzone-0.9.pom。按如下配置导入依赖:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() maven { url = uri("https://jitpack.io") } } }
以及
implementation("com.github.gastsail:hzone:0.9")
但无法找到库中的HZone()方法,该方法非internal或private,本应可见。我已尝试16种不同配置的版本,均构建成功,但导入后既无法访问方法,也无法在External Libraries中找到它,不过依赖已成功拉取。代码对应仓库0.9分支,Jitpack页面也有对应内容。
问题排查与解决建议
- 检查Jitpack构建产物完整性:下载Jitpack上的
hzone-0.9.aar包,解压后查看内部的classes.jar,确认HZone类是否被正确打包。若不存在,说明Jitpack构建过程中未将该类纳入产物,需检查仓库代码的build.gradle配置,比如是否正确设置了sourceSets,或者模块是否正确标记为库模块。 - 清理本地缓存并重同步:删除本地maven缓存目录(路径一般为
~/.m2/repository/com/github/gastsail/hzone/0.9),或通过Android Studio的File > Invalidate Caches...清理缓存,之后重新同步项目依赖,避免本地缓存的不完整产物干扰。 - 核对包名与导入语句:确认代码中导入
HZone的包名与仓库中该类的实际包名完全一致,避免因包名拼写错误导致无法找到类。 - 检查库的对外暴露配置:如果是Android库,确保
build.gradle中使用api而非implementation引入了包含HZone的模块(若有子模块),或在模块化项目的module-info.java中正确导出了对应包。 - 验证Jitpack版本匹配:确认Jitpack上的
0.9版本对应仓库的0.9分支/tag,避免因版本标识不匹配导致拉取了错误的代码产物。
内容的提问来源于stack exchange,提问作者Gastón Saillén
相关产品推荐
相关产品推荐

