mcpField
1
126-java-exception-handling

126-java-exception-handling

github.com/jabrena开发456285 次安装1 天前更新
代码仓库

关于 126-java-exception-handling

用于改进 Java 异常处理的 Skill,面向审查或调整故障处理逻辑的开发者,涵盖资源管理、错误传播与日志,并要求编译和完整构建验证。

主要功能

  1. 01具体异常类型与异常链
  2. 02try-with-resources 资源清理
  3. 03安全错误消息与结构化日志
  4. 04超时与有界重试
  5. 05异步失败传播
  6. 06编译及完整构建检查

适用场景

  1. 01审查异常分类与传播方式
  2. 02改进资源清理和错误上下文
  3. 03完善 API 错误转换与日志
  4. 04处理超时或异步失败

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jabrena/plinth --skill 126-java-exception-handling

安装后在 Claude Code 中输入/126-java-exception-handling确认已加载。

附带文件references/126-java-exception-handling.md

详细介绍

Java 异常处理指南

识别并应用稳健的 Java 异常处理实践,以提升错误信息的清晰度、安全性、可调试性和系统可靠性。

本技能涵盖哪些内容?

  • 使用具体异常类型,而非通用的 Exception/RuntimeException
  • 使用 try-with-resources 自动清理资源
  • 编写安全的异常消息,避免信息泄露
  • 使用异常链保留完整的错误上下文
  • 使用 IllegalArgumentException/NullPointerException 提前验证输入
  • 处理 InterruptedException 时恢复中断状态
  • 使用 @throws 编写 JavaDoc 文档,并遵循快速失败原则
  • 使用关联 ID 进行结构化日志记录,避免重复记录并抛出异常
  • 通过集中式异常映射器在 API 边界转换异常
  • 仅对幂等操作进行带退避的有限重试
  • 使用截止时间传播强制执行超时
  • 使用 Throwable#addSuppressed 处理次要清理失败
  • 切勿捕获 Throwable/Error
  • 通过错误指标实现可观测性
  • 在异步 CompletionStage 代码中传播失败

范围: 本参考按示例(良好/不良代码模式)介绍各个核心领域。请根据适用示例应用建议。

约束

在应用任何异常处理变更之前,确保项目可以编译。如果编译失败,请立即停止——解决问题之前不得继续。完成改进后,运行完整验证。

  • MANDATORY:应用任何变更之前,运行 ./mvnw compile 或 mvn compile
  • SAFETY:如果编译失败,请立即停止——在项目恢复到有效状态之前不得继续
  • VERIFY:应用改进后,运行 ./mvnw clean verify 或 mvn clean verify
  • BEFORE APPLYING:请阅读参考文档,了解每种异常处理模式的详细正反示例、约束和安全措施

何时使用此技能

  • 处理异常
  • 在 Java 代码中使用 try-with-resources
  • 在 Java 代码中创建异常链
  • 在 Java 代码中应用快速失败验证
  • 审查 Java 异常分类和传播方式

工作流

  1. 在修改异常处理之前编译项目

运行 ./mvnw compile 或 mvn compile,如果编译失败,请立即停止。

  1. 阅读异常处理参考文档

阅读 references/126-java-exception-handling.md,并确定适用的失败处理和可观测性改进措施。

  1. 应用异常处理改进

重构代码,使用具体异常、安全的资源处理、错误转换和一致的日志记录模式。

  1. 通过完整构建进行验证

应用改进后,运行 ./mvnw clean verify 或 mvn clean verify。

参考

详细指南、示例和约束请参阅 references/126-java-exception-handling.md。

评论

支持 Markdown