getsentry / getsentry/sentry-java
Use build-local dir instead of project deps in samples
- 主要语言
- Kotlin
- 星标
- 1.4k
- 派生
- 478
- 平均合并
- 2 天 23 小时
- 30 天内合并 PR
- 67
描述
Our Spring Boot + OTel samples currently use project dependencies (e.g. `project(":sentry-opentelemetry:sentry-opentelemetry-bom")`), which:
- Pollutes the buildscript classpath, undermining test isolation
- Makes the samples uncopyable by customers (who won't have project references)
- Masks real compatibility issues (e.g. OTel + Spring Boot version conflicts hidden by the BOM being pulled via project ref rather than a real artifact)
**Proposed change**
Publish SDK artifacts to a build-local Maven directory during CI and configure the samples to resolve from that directory. This preserves per-PR test coverage without the classpath isolation problems of `mavenLocal` (which has shared global state) and without requiring publishing to Maven Central.
**Scope**
- Set up a build-local publish step that outputs to a local directory (e.g. `build/local-repo`)
- Update sample `build.gradle.kts` files to add that local dir as a repository
- Use published coordinates (e.g. `io.sentry:sentry-opentelemetry-bom`) instead of project references in `dependencyManagement`
- Keep samples using released/stable version strings so customers can copy them as-is
**Out of scope**
- Moving samples to Maven Central publishing
- Fully separating samples from test infrastructure (tracked separately)
--
[View Junior Session in Sentry](https://sentry.sentry.io/explore/conversations/slack%3AC089VFRB8N9%3A1783054068.421249/?project=4510944073809921)
贡献指南
调研方向
Start by reading the sample build.gradle.kts files and the CI build configuration that publishes SDK artifacts. Trace the current project dependency and dependencyManagement setup, then verify that samples resolve published coordinates from the build-local directory with stable version strings and that the CI sample tests pass.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- kotlin, spring-boot
- 领域
- build-system, ci-cd
- Issue 类型
- 重构
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 52/100