在将Scala项目升级到Gradle 6& Zinc 1.3.5之后,调试生成的Protobuf代码的编译错误时,我发现编译器类路径包含两个版本的protobuf jar -我需要的版本(3.9.x)和3.7。后者是锌的依赖关系。
在Gradle中运行Zinc Scala构建的正确方法是什么,而不会将其自身的依赖项泄漏到类路径?
发布于 2021-08-25 16:20:03
通过合并并包含在锌的1.4.0版本中的sbt/zinc 799解决了这一问题。
有了这个MR,他们开始对protobuf依赖项进行着色(参见this commit)。
不幸的是,目前不能将此版本的锌与Gradle一起使用,因为Gradle问题#15491从未得到解决(注意,问题标题提到锌1.4.3,但适用于1.3.x系列之后的所有锌版本)。
看起来没有任何计划来解决#15491,但看起来这个问题将作为PR Gradle的副作用得到解决,PR Gradle正在积极开发,目的是为18001添加Scala3支持(还包括清理各种长期存在的问题,类路径相关的问题)。
https://stackoverflow.com/questions/63010652
复制相似问题