java - 如何使用具有实现依赖项的Gradle创建可执行文件胖子

标签 java gradle executable-jar gradle-plugin fatjar

我在Gradle 4.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

关于java - 如何使用具有实现依赖项的Gradle创建可执行文件胖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64580827/

相关文章:

java - 如何使用 Maven 创建具有依赖项的可执行/可运行 JAR?

java - 从 Windows 命令行调用 jar 文件时 System.out 不工作

java - 如何处理包含正斜杠的请求?

java - 在 actionperformed java 中运行代码时执行多个任务

java - 每当我尝试导出到可执行 jar 时 Eclipse 都会出错

渐变 wsimport

google-play - 在gradle.build中签名配置

java - BindingResult 方法参数的存在决定了抛出的异常?

java - 如何创建简单的扑克手牌算法?

android - android gradle build-在assembleRelease或assembleLive之前运行任务