optimizely / optimizely/java-sdk
FindBugs / SpotBugs collision
还没有人认领这个 Issue。
- 主要语言
- Java
- 星标
- 44
- 派生
- 32
- 平均合并
- 8 小时 39 分钟
- 30 天内合并 PR
- 1
描述
The core-api module depends on both FindBugs com.google.code.findbugs:jsr305:3.0.2 and SpotBugs com.google.code.findbugs:annotations:3.0.1.
SpotBugs seems to be the "successor" of FindBugs. But this leads to unexpected errors.
Different versions are used 3.0.1 vs 3.0.2 which does not make sense to me.
And most importantly, since these are almost identical copies, it will create collision errors on the consumer side, for example:
Duplicate class javax.annotation.CheckForNull found in modules annotations-3.0.1 (com.google.code.findbugs:annotations:3.0.1) and jsr305-3.0.2 (com.google.code.findbugs:jsr305:3.0.2)
Is there a good reason to keep this "duplicated" dependency?
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从 core-api/build.gradle 的第 5-6 行开始,检查为什么同时声明了 FindBugs jsr305 和 SpotBugs annotations。复现 consumer 侧的 duplicate-class 错误,然后验证依赖声明是否可以调整为互不冲突,或者是否有文档记录的理由要求同时使用两者;完成的标准是冲突已解决,或理由已明确。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- build-system
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100