transmittable-thread-local
transmittable-thread-local copied to clipboard
使用 spring-boot loader 机制进行 fatjar 打包,以便支持更多依赖
使用 spring-boot loader + fatjar 模式打包有如下优势:
- 依赖无需shade,只需要打包到 BOOT-INF
- 无需配置 bootstrap classpath
- 依赖及不导出的类可以在独立的loader中加载,避免应用会意外访问
- 主代码中可以依赖 kotlin,简化代码并且可以对 Transformlet 提供更好的 dsl
ttl-fatjar.jar
`-- BOOT-INF/
| `-- lib/
| `-- dep1.jar
| `-- dep2.jar
| `-- classes/
| `-- <TTL类>
`-- ttl/loader
`-- <loader相关类>
- 依赖无需shade,只需要打包到 BOOT-INF
- 无需配置 bootstrap classpath
- 依赖及不导出的类可以在独立的loader中加载,避免应用会意外访问
👍 💖
TTL v3
会提供
- 无
shade
的API
依赖 - 分离用户
API
与Agent
成2个依赖
也可以提供spring-boot loader + fatjar
模式依赖
PS:v3
作为大版本升级,可以做不兼容的修改,清理掉不好的设计与实现;当然会提供TTL v2
的兼容包。
- 主代码中可以依赖 kotlin,简化代码并且可以对 Transformlet 提供更好的 dsl
v3
会提供Kotlin
语言的一等公民支持。