java - 如何使用Gradle创建具有实现依赖性的可执行胖jar

我在Gradle4.6中有一个简单的项目,我想制作一个它的可执行JAR。我尝试过shadowgradle-fatjar-plugingradle-one-jarspring-boot-gradle-plugin插件,但它们都没有添加声明为implementation的依赖项(我没有任何compile插件)。它与compile一起工作,例如用于gradle-one-jar插件,但我希望有implementation依赖项。
非常感谢!

最佳答案

您可以使用以下代码。

jar {
    manifest {
        attributes(
                'Main-Class': 'com.package.YourClass'
        )
    }
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
    }
 }

确保将com.package.YourClass替换为包含static void main( String args[] )的完全限定类名。
这将打包运行时依赖项。如果需要更多信息,请查看docs

本文翻译自 https://stackoverflow.com/questions/49278063/

网站遵循 CC BY-SA 4.0 协议,转载或引用请注明出处。

标签 java gradle executable-jar gradle-plugin fatjar


相关文章:

android - 有没有办法将配置文件从客户端应用程序传递到库项目?

java - 如何获取正在运行的JAR文件的路径?

java - BigDecimal值货币

java - 将大型文档库从一个Liferay 6.1实例导出到另一个

java - 无法删除Eclipse中的某些断点

java - 当所有测试都是最新版本时,如何运行Gradle测试?

android - Gradle如何生成外部库?

java - 具有init.d而不是用户身份启动的Spring Boot可执行jar

java - 运行jar文件和exe之间的区别?

java - 字符串转换