开发工具
共 415 篇文章
Node.js execFile 报 spawn ENOENT:路径要放对参数位置
Node.js execFile 调用项目内程序报 spawn ENOENT,核对 options 对象、文件路径与真实 cwd,再检查 PATH 和部署目录,保留无 shell 的参数传递。
JsonOutputParser 报 Invalid json output
JsonOutputParser 能处理 JSON 围栏,但仍会遇到非法语法、缺字段或截断内容。区分 JSON 解析、Pydantic 字段验证和流式完成状态。
Java BigDecimal 已设置小数位,divide 仍报 Non-terminating decimal expansion
BigDecimal 精确除法可能在 setScale 执行前就因无限循环小数失败。直接指定除法的 scale 和舍入规则,并区分小数位、有效数字及被除数 scale。
Agent 关闭多个 MCP 连接,报 cancel scope 跨 Task 退出
多个 MCP 连接退出时报 cancel scope 跨 Task 错误,检查上下文的任务归属和反向关闭顺序。用同一 Task 的 AsyncExitStack 管理 transport 与 session。
Python zip 输入长度不一致时静默丢掉尾部数据
zip 默认在最短输入耗尽时停止。Python 3.10 起可用 strict=True 检出长度差,但检查随消费发生,已处理的前缀和输入迭代器副作用不会自动回退。
Python Requests 收到 204 后调用 json 报 JSONDecodeError
按接口契约区分 204 无正文和异常空响应,不把 JSON 解码错误吞成空对象,也不因解析失败重复发送写请求。
Git stash pop 冲突后提示 The stash entry is kept
Git stash pop 发生冲突时会保留原条目。完成文件处理和暂存后,核对工作区、索引及 stash 内容,再决定是否单独 drop;再次 pop 不能代替继续操作。
Fragment 收集 Flow 时 binding 空指针:把界面订阅绑定到 View 生命周期
Fragment 返回页面后 binding 空指针时,检查 Fragment 与 View 两套生命周期,用 viewLifecycleOwner 和 repeatOnLifecycle 管理订阅,保留 binding 清理。
Rust 在 for 循环前调用 collect,编译报 cannot infer type
collect 需要确定目标集合类型,类型标注不会自动消除元素引用。直接遍历 keys,或明确收集为 Vec,并按键类型处理单层与双层引用。
Python 离开 except 后读取异常变量报 NameError
Python 3 会在 except 结束时清除 as 后面的目标名字,同名初值也不会恢复。将临时别名与业务变量分开,按需保存错误文本或异常引用,并覆盖无异常路径。
LaunchedEffect 仍调用旧回调:区分 effect key 和 rememberUpdatedState
LaunchedEffect 等待结束后调用旧回调时,区分任务需要重启与回调需要更新,用 rememberUpdatedState 在执行时读取最新值,并核对 key 的业务含义。
Git 本地分支是 master,推送 main 报 src refspec main does not match any
首次提交已经在 master 上生成,推送 main 却找不到来源引用。核对本地分支与 HEAD,按项目约定改名或使用正确名称推送,再确认远程提交和上游关系。
Trainer 组批报 expected sequence of length,padding 为什么没生效
Trainer 组批时报张量长度不同,检查实际 collator 与输入、标签列。区分分类、token classification、seq2seq 和语言模型的补齐及损失掩码。
vLLM 启动报最大模型长度超过 KV cache 容量
权重已经放进显存,vLLM 仍可能没有足够的 KV cache。核对启动日志中的容量、实际上下文需求和 prefill 配置,再调整模型长度与显存预算。
pandas 链式赋值未生效:用一次 loc 修改父表,区分 Copy-on-Write
pandas 链式赋值未更新原表,按目标选择父表单次 loc 或独立子表 copy,区分 pandas 2.x 的 SettingWithCopyWarning 与 3.0 Copy-on-Write 行为。
JavaScript 的 map(parseInt) 把数字字符串转换成 NaN
map 会把数组索引传给 parseInt 的进制参数,导致 NaN 或错误数值。用包装函数固定进制,并区分整数前缀解析与完整输入验证。
Git 创建分支报 cannot lock ref:已有分支占用了名称前缀
Git 创建 feature/login 时提示 feature 已存在,属于分支名称前缀冲突。用完整引用定位,保留旧分支选择新名字,或通过本地改名释放前缀,并核对提交与回退。
Sentence Transformers 编码长文时,后半段为什么没起作用?
长文正常返回向量也可能已经截断。检查 max_seq_length、完整 token 数与实际编码长度;切分后核对尾部覆盖,不把调大上限当成长文能力。


