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

求助:KSP日志位置及Bazel环境下KSP调试日志输出问题

Bazel环境下KSP日志位置及调试方法

遇到的错误信息

error: [ksp] No providers found in processor classpath.
error: error occurred in KSP, check log for detail

问题背景

已为依赖中存在的类指定processor_class,添加--subcommands --verbose_failures参数未获取有效信息,在bazel-out目录未找到日志;后续通过bazel info output_base返回路径找到worker-0-KotlinKsp.log,但文件大小为0。


KSP日志的默认位置

  • 日志文件默认存储在Bazel的输出根目录下,执行以下命令可获取该路径:
    bazel info output_base
    
  • 日志文件名格式为worker-<数字>-KotlinKsp.log,例如你找到的worker-0-KotlinKsp.log。

日志为空的排查与解决

如果日志文件为空,通常是KSP在初始化阶段就触发错误,尚未写入日志就退出,可按以下方向排查:

  • 检查processor_class配置准确性:确保指定的类全路径与你的KSP处理器类完全一致,无拼写或包名错误。
  • 验证处理器依赖的引入方式:确认包含KSP处理器的Bazel目标已正确关联到需要注解处理的目标,比如通过deps或标记为processor类型依赖。
  • 重启Bazel worker进程:执行bazel shutdown关闭所有后台worker,再重新执行构建,可能会触发日志正常写入。

强制输出KSP日志的额外手段

  • 添加--worker_verbose参数构建:该参数会让KSP worker输出更详细的运行信息,可能填充空日志文件:
    bazel build --worker_verbose //your/target:label
    
  • 禁用worker模式运行:添加--strategy=KotlinKsp=local参数,让KSP以本地进程方式运行,日志会直接输出到终端的标准错误流(stderr)中:
    bazel build --strategy=KotlinKsp=local //your/target:label
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 11:32:41