我可以更改 Karate 中的日志记录库吗?
Can I change logging libraries in Karate?
我正在尝试将空手道添加到大量使用最新版本 log4j2 的项目中。为了避免与将多个日志库作为依赖项相关的错误和行为,我们的团队在父 POM 中将 logback 标记为禁止的传递依赖项。删除禁止的依赖项可能不是一种选择。不幸的是,这意味着我们的项目在添加 Karate 后将无法编译,因为 Karate 依赖于 logback。
有什么方法可以切换空手道使用的日志库吗?能够改用 log4j2 将使我们的团队受益匪浅。
如果我也在考虑将 logback 标记为子 POM 中的排除依赖项。这会严重破坏空手道吗?
是的,空手道 compile-time 依赖于 logback,需要一些 re-engineering 才能迁移。老实说,这个决定对我们很有帮助(尤其是使用 Log4j issues),这是 5 年来第一次有人要求转换。
请注意,空手道在大多数项目中用作 test
依赖项。它永远不应该泄漏到您的生产依赖项中。还有一些选项,例如 maven 配置文件,或者只是 de-coupling 您的 API 测试 maven 项目和您的生产(服务器)代码,非常合理,并且有其优点(和缺点)。
如果您确实需要进行此更改,请通过 Karate Labs 联系项目负责人以获得商业报价。您当然可以通过讨论和最终的 PR 尝试 open-source 贡献。
我正在尝试将空手道添加到大量使用最新版本 log4j2 的项目中。为了避免与将多个日志库作为依赖项相关的错误和行为,我们的团队在父 POM 中将 logback 标记为禁止的传递依赖项。删除禁止的依赖项可能不是一种选择。不幸的是,这意味着我们的项目在添加 Karate 后将无法编译,因为 Karate 依赖于 logback。
有什么方法可以切换空手道使用的日志库吗?能够改用 log4j2 将使我们的团队受益匪浅。
如果我也在考虑将 logback 标记为子 POM 中的排除依赖项。这会严重破坏空手道吗?
是的,空手道 compile-time 依赖于 logback,需要一些 re-engineering 才能迁移。老实说,这个决定对我们很有帮助(尤其是使用 Log4j issues),这是 5 年来第一次有人要求转换。
请注意,空手道在大多数项目中用作 test
依赖项。它永远不应该泄漏到您的生产依赖项中。还有一些选项,例如 maven 配置文件,或者只是 de-coupling 您的 API 测试 maven 项目和您的生产(服务器)代码,非常合理,并且有其优点(和缺点)。
如果您确实需要进行此更改,请通过 Karate Labs 联系项目负责人以获得商业报价。您当然可以通过讨论和最终的 PR 尝试 open-source 贡献。