You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle依赖配置中ext属性的正确简写语法咨询

Gradle依赖中ext的正确简写语法

哈哈,这个问题我之前配置依赖时也踩过类似的坑!Gradle确实支持带ext属性的依赖简写,但你之前的写法不符合它的语法规则。

首先,先明确你原来的完整配置含义:

compile group: 'com.sun.xml.ws', name: 'jaxws-rt', version: '2.2.10', ext: 'pom'

这里的ext: 'pom'是指定依赖的类型为pom文件,而不是默认的jar。

正确的简写方式有两种:

  1. 最简洁的@符号写法
    直接在版本号后面加上@pom,把ext属性嵌入到简写字符串中,语法如下:

    compile 'com.sun.xml.ws:jaxws-rt:2.2.10@pom'
    

    这种写法完全等价于你原来的完整配置,也是Gradle官方推荐的简写方式。

  2. 带闭包的简写形式
    如果后续需要添加更多依赖属性(比如exclude规则),也可以用括号包裹简写字符串,再通过闭包指定ext:

    compile('com.sun.xml.ws:jaxws-rt:2.2.10') {
        ext = 'pom'
    }
    

为什么你的写法不生效?

你尝试的compile 'com.sun.xml.ws:jaxws-rt:2.2.10' ext: 'pom'不符合Gradle的语法逻辑——compile方法要么接收一个完整的配置Map,要么接收一个字符串参数+可选的闭包,不能在字符串后面直接追加ext: 'pom'这种键值对,Gradle无法解析这种写法。

内容的提问来源于stack exchange,提问作者merlin2011

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 08:09:01