You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android自定义Javadoc任务报错“Path may not be null or empty string”排查

问题

将Android Gradle Plugin(AGP)从8.0.2升级到8.1.0后,运行自定义Javadoc任务时抛出错误:Cause: path may not be null or empty string. path = ''。

相关背景:

  • 其他相关反馈提到该错误与查找签名密钥库文件、gradle.properties中的RELEASE_STORE_FILE属性有关
  • 我的gradle.properties中并未配置RELEASE_STORE_FILE属性(原本就不打算使用它)

疑问:

  1. 密钥库文件对Debug构建是否也必需?
  2. 为何仅在AGP升级到8.1.0后出现此问题?

自定义Javadoc任务配置(build.gradle中):

dependsOn "generateReleaseRFile"
dependsOn "compileReleaseKotlin"
failOnError true
configurations.implementation.setCanBeResolved(true)
source = android.sourceSets.main.java.sourceFiles
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
classpath += configurations.implementation
解答
  • Debug构建不需要密钥库文件:Debug构建默认使用Android SDK自带的调试密钥库,完全不需要开发者手动配置RELEASE_STORE_FILE这类签名属性就能正常完成构建。你遇到的错误不是Debug构建本身的问题,而是自定义Javadoc任务触发了Release变体的签名检查逻辑。

  • AGP 8.1.0的行为变更导致问题:AGP 8.1.0对构建任务的依赖关系、签名配置的检查逻辑做了调整。你的自定义Javadoc任务依赖了generateReleaseRFile和compileReleaseKotlin这两个Release变体的任务,升级后AGP会强制校验Release变体的签名配置——哪怕你没打算给Release构建签名,只要触发了Release相关任务,它就会去检查RELEASE_STORE_FILE等属性,而你没配置的话就会抛出空路径错误。

内容的提问来源于stack exchange,提问作者es97

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:37:39