使用 Gradle 构建具有依赖项的 JAR

2024-03-04

我有一个多项目构建,我在其中一个子项目中放置了构建一个胖 JAR 的任务。我创建了与该任务类似的任务这本食谱中描述的 http://docs.codehaus.org/display/GRADLE/Cookbook#Cookbook-Creatingafatjar.

jar {
  from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
  manifest { attributes 'Main-Class': 'com.benmccann.gradle.test.WebServer' }
}

运行它会导致以下错误:

原因:你无法改变 不存在的配置 未解决状态!

我不确定这个错误是什么意思。我还在 Gradle JIRA 上报告了这一点,以防它是一个错误 http://jira.codehaus.org/browse/GRADLE-1361.


我已经发布一个办法 https://issues.gradle.org/browse/GRADLE-1361在 JIRA 中与 Gradle 的对比:

// Include dependent libraries in archive.
mainClassName = "com.company.application.Main"

jar {
  manifest { 
    attributes "Main-Class": "$mainClassName"
  }  

  from {
    configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
  }
}

注意mainClassName必须出现在之前jar {.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Gradle 构建具有依赖项的 JAR 的相关文章

随机推荐