当前位置: 首页 > 知识库问答 >
问题:

Gradle ShadowJar:递归地包含依赖项

寿嘉悦
2023-03-14

我使用shadowJar在JAR中包含依赖项

shadowJar {
  archiveClassifier = ""
  dependencies {
    include(dependency("org.eclipse.jgit:org.eclipse.jgit:5.4.2.201908231537-r"))
    include(dependency("net.dv8tion:JDA:4.1.1_140"))
  }
}

问题是它没有添加我的dependancies的所有dependancie树,我不知道为什么。

有人知道吗?

共有1个答案

华心思
2023-03-14

我建议您为该依赖项创建一个配置,并将其包含到一个shadowjar中:

configurations {
    extras
}

dependencies {
    extras "org.eclipse.jgit:org.eclipse.jgit:5.4.2.201908231537-r"
    extras "net.dv8tion:JDA:4.1.1_140"
}

shadowJar {
  configurations = [project.configurations.compile + project.configurations.extras]
}

 类似资料:
  • 配置 jar 包需要在 compile 中添加响应依赖。下面的代码添加了 libs 文件夹中的所有 jar 作为依赖。 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) } android { ... } 注意:dependencies DSL 标签是标准 Gradle API 中的一部分,所以它不属于

  • 我试图在注释中创建一些信息树结构。经过一些尝试和帮助(请参阅java注释中的类型层次结构),我转向了以下模型。 该节点应允许我定义一级条件树。LogicalPression中的值定义子节点(属性和其他节点)之间的关系。问题是注释不允许递归依赖: 即使我在Node和NodeList包含节点列表中添加了一些NodeList注释,循环依赖也会再次被识别。 循环注释定义有什么解决方案吗?

  • 我正在通过编程Clojure书学习Clojure,但很早就想从书中找到一个例子。 我从书中下载了代码示例;目录结构为 其中有一堆.clj文件,包括一个名为induction.clj的文件。 我试图运行的代码以 ...但我不能让它发挥作用。 我试着添加一个checkouts目录,并将其中的examples目录符号化。我试过用manifest.txt创建一个.jar文件,给出了1.0.0版本....

  • 现在假设我有项目B,我们叫它酒吧。Bar是一个Android应用程序,Bar依赖于Foo。 嗯,我有。但是,当我在Foo from Bar中调用一个调用OkHttp的函数时,我会得到以下消息: 这样的事情可能发生吗?还是Bar需要手动依赖OkHttp以及Foo拥有的任何其他依赖项?

  • 我有几个项目,没有一个是在Maven框架下。 但是我在项目依赖领域面临一个问题。 让我们用一个非常简单的例子来假设; 我理解这种情况很正常,因为不在类路径上。虽然,我说的是一个更复杂的层次树,我不希望高层项目在他下面添加所有的子依赖树。 提前感谢!

  • 问题内容: 我看到了类似的问题,但未找到可接受的答案。问题-我有一些小功能我自己的android库。我的库使用其他库-fe Hawk(无sql数据库)。我的图书馆gradle文件: 图书馆工作正常。如果我将它用作另一个项目中的项目-它也可以工作。但是当我生成文件(带有-> )并包含到单独的项目中时-失败。项目仅查看我的图书馆的班级。Hawk com.orhanobut.hawk软件包和off其他软