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

如何在Gradle中依赖Zip包内的Jar?以获取IntelliJ的platform-api.jar为例

在Gradle中依赖Zip包内的Jar文件(以IntelliJ Platform API为例)

1. 配置IntelliJ分发仓库

首先在Gradle构建文件中添加IntelliJ的官方分发仓库,让Gradle能定位到目标Zip包:

// Groovy DSL
repositories {
    maven {
        url "https://cache-redirector.jetbrains.com/intellij-repository/releases"
    }
}
// Kotlin DSL
repositories {
    maven {
        url = uri("https://cache-redirector.jetbrains.com/intellij-repository/releases")
    }
}

2. 直接依赖Zip内的指定Jar

通过zipTree引用目标Zip包,同时过滤出你需要的platform-api.jar。以版本2023.2.3为例:

// Groovy DSL
dependencies {
    implementation files(zipTree("com.jetbrains.intellij.platform:platform-api:2023.2.3@zip").matching {
        include "lib/platform-api.jar"
    })
}
// Kotlin DSL
dependencies {
    implementation(files(zipTree("com.jetbrains.intellij.platform:platform-api:2023.2.3@zip").matching {
        include("lib/platform-api.jar")
    }))
}
  • @zip后缀明确告知Gradle下载Zip格式的依赖包
  • matching闭包用于精准筛选Zip内的目标Jar文件

3. 进阶:批量提取Zip内Jar并复用配置

如果需要一次性引入Zip内多个Jar(比如lib目录下所有Jar),可以自定义配置简化操作:

// Groovy DSL
configurations {
    intellijLibs
}

dependencies {
    intellijLibs "com.jetbrains.intellij.platform:platform-api:2023.2.3@zip"
}

sourceSets.main.compileClasspath += files(configurations.intellijLibs.collect {
    zipTree(it).matching { include "lib/*.jar" }
})
// Kotlin DSL
val intellijLibs by configurations.creating

dependencies {
    intellijLibs("com.jetbrains.intellij.platform:platform-api:2023.2.3@zip")
}

sourceSets.main.compileClasspath += files(intellijLibs.map {
    zipTree(it).matching { include("lib/*.jar") }
})

注意:请根据项目实际需求替换示例中的版本号(如2023.2.3),确保与你的IntelliJ平台版本兼容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 16:13:09