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

Bitbucket流水线构建Android应用出现无法列出文件系统报错如何解决

对应报错日志:

> Task :mobile:lintDebug
Wrote HTML report to file:///opt/atlassian/pipelines/agent/build/mobile/build/reports/lint-results-debug.html
BUILD SUCCESSFUL in 2m 51s
41 actionable tasks: 41 executed
Unable to list file systems to check whether they can be watched.
The whole state of the virtual file system has been discarded.
Reason: Could not query file systems: could not open mount file (errno 2: No such file or directory)
报错原因
  • 该警告由Gradle 7.0及以上版本新增的虚拟文件系统(VFS)监听特性触发:该特性会读取/proc/self/mountinfo文件查询系统挂载的文件系统,判断哪些路径支持文件变更监听,用于提升本地增量构建的执行速度。
  • Bitbucket Pipelines默认的构建Docker容器做了权限裁剪,未向容器内部暴露/proc/self/mountinfo文件,导致Gradle读取文件失败抛出该警告。
  • 该警告属于非致命错误,不会影响构建产物的正确性,日志中的BUILD SUCCESSFUL已经说明Android应用构建流程已经正常执行完成。
解决方案
  • 方案1:禁用Gradle VFS监听(最推荐,流水线为一次性干净构建环境,该特性无实际使用价值)
    直接在项目根目录的gradle.properties文件中添加如下配置即可完全消除警告:
    org.gradle.vfs.watch=false
    
    如果你不想修改项目代码,也可以在流水线的构建命令中动态添加参数禁用该特性:
    ./gradlew <你的构建任务名> -Dorg.gradle.vfs.watch=false
    
  • 方案2:给构建容器挂载proc目录
    若你需要保留VFS监听特性,可以修改bitbucket-pipelines.yml的构建配置,启动构建容器时添加挂载参数,将宿主机的/proc目录挂载到容器内部:
    script:
      - docker run --volume /proc:/proc <你的构建镜像名称> <构建执行命令>
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 00:45:03