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

使用Gradle将所需库提取到生成的Jar中

慕学海
2023-03-14

我试图用gradle构建一个(fat)jar,类似于eclipse在选择export->runnable jar和选项Extract required libraries into generated时生成的内容。

Eclipse将所有链接的JAR提取到新的JAR中。在ant中,这看起来是这样的:

<zipfileset excludes="META-INF/*.SF" src="./lib/soot-trunk.jar"/>

我怎么能对Gradle做同样的事情呢?

共有1个答案

罗睿识
2023-03-14

为了创建一个胖罐子,使用了这个插件。您需要调用shadowjar任务。

 类似资料:
  • 我已经从spring入门指南下载了源代码(zip文件):http://spring.io/guides/gs/rest-service/ 在文件夹“Complete”中生成整个项目已成功。使用Gradle(Gradle run)运行生成的jar文件也是成功的。但当我尝试在Windows命令行中使用“java-jar build\libs\gs-rest-service-0.1.0.jar”手动运行

  • 有谁知道如何使用Gradle制作一个uber/fat/shade sources-jar(和javadoc-jar)? 生成的 Jar 不仅应包含当前项目的源代码,还应包含其依赖项的源代码。我一直在研究,除其他外,一种香草方式和使用Shadow插件的方式。两者都擅长创建一个普通的uber/fat/shade jar,但它们似乎都不支持创建sources-jar的方法。

  • 问题内容: 我想使用命令行实用程序将我的一个jar提取到指定目录。 如果我了解这个正确的选择应该是窍门,但是当我尝试 我从jar实用程序获取使用情况信息,所以我做错了事。 是我想要实现的东西还是需要手动移动我的jar并在那里调用 问题答案: 最好这样做。 导航到所需的文件夹结构 使用命令

  • 问题内容: 我有一个用Java编写的exe文件。我知道可以将Java程序制作为exe,并且有将jar文件转换为exe的工具,但是可以转换回来吗?AFAIK jar文件可以在可以运行Java的任何平台上运行,我想在Mac上使用Windows编译的Java程序,而无需使用任何额外的虚拟化(葡萄酒,vmware) 问题答案: 这取决于exe的构建方式: 如果它只是用JSmooth之类的工具(如该线程所建

  • 问题内容: 我想知道使用可运行的jar文件创建将库从eclipse提取和打包成jar文件之间的区别。 如果我的程序(可运行的jar)使用需要这些外部库(jar)的其他类,我应该选择什么? 问题答案: 如果要将jar放入生成的jar文件中,则可以使用打包方法。例如,如果您使用的是Apache库或其他一些第三方的jar,则可能需要将这些jar保存在生成​​的jar中。在这种情况下,请使用包装。 “将所

  • 我还有另一个带有SDK依赖项的lib(一个插件,假设模块B) 所以在我的项目中,有三个模块:SDK(A)、demoApp和插件(B) 现在我需要在jar文件中分发我的SDK和/或插件,以便人们可以在他们的项目中使用它 编辑:为了澄清,我加了一封信 我需要一个用于的jar文件 B需要A才能运行(依赖项) 我需要一个用于b的jar文件