java - 在 Gradle 发布的元数据中表达从 Java 11 中删除的模块的依赖关系
问题描述
我有一个使用 JAXB 的库,该库已从 Java 11 中删除。我的库必须与 Java 8 和 Java 11 兼容。构建和测试库很容易,因为如果 Java 11 运行时是,我添加以下依赖项在构建期间检测到:
implementation "com.sun.xml.bind:jaxb-impl:2.3.3"
但是,我的目标是发布具有两种变体的元数据,一种具有属性 org.gradle.jvm.version 设置为 8 且没有 JAXB 依赖项,另一种具有属性 org.gradle.jvm.version 设置为 11 和 JAXB 依赖项。我还希望这对消费者是透明的,即它的依赖声明仍然存在
implementation "foo:bar:1.0.0"
当前版本的 Gradle 可以做到这一点吗?通过声明默认功能的变体?
解决方案
推荐阅读
- django - POST是在django中发送数据的唯一方法吗?
- javascript - 创建自定义验证装饰器:它是如何工作的?
- java - Spring-boot - 从用户那里获取 base64,然后点击另一个接受 Multipart/Form-Data 的 API
- ios - 错误:产生多个命令,IOS 在 Mac Mini M1 中构建错误颤动
- azure - 为订阅上的 Azure AD 组创建具有某些所有者权限的自定义角色
- kubernetes - 当配置不指向 localhost 时,与服务器 localhost:8080 的连接被拒绝
- java - 无论我做什么,状态栏通知图标都保持黑色
- c# - Restsharp RequestBody 挑战,JSON 格式问题?
- r - VSCode R packrat 库位置
- spring-security - OAuth2AuthorizationRequestRedirectFilter 给出 500 给定不存在的客户端注册 ID