小编Had*_*ien的帖子

Gradle - FatJar - 无法找到或加载主类

我知道这个问题被问了很多并且有很多答案,但我仍然明白了,我不明白为什么......

我正在尝试.jar从带有gradle的依赖项的projet 生成一个.

我有一个班级src/main/java/Launcher.java,我有自己的main方法.

有我的 build.gradle

plugins {
    id 'java'
    id 'application'
}

version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
mainClassName = 'Launcher'

repositories {
    mavenCentral()
}

dependencies {
    compile 'commons-io:commons-io:2.1'
    compile 'io.vertx:vertx-core:3.4.0'
    compile 'io.vertx:vertx-web:3.4.0'
    compile 'com.google.code.gson:gson:1.7.2'
    compile "com.auth0:java-jwt:3.1.0"
    compile 'org.mongodb:mongo-java-driver:3.4.1'
    compile 'com.google.guava:guava:24.1-jre'
    compile 'commons-io:commons-io:2.6'
}

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

    from {
        configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
    }
}
Run Code Online (Sandbox Code Playgroud)

$>gradle assemble用来生成我的jar然后$>java -jar path/to/my/.jar 我得到错误"无法找到或加载主类Launcher"...

我不明白为什么,当我查看.jar​​时,我有Launcher类和META-INF我有我的清单

截图

很抱歉在2018年仍然问这个问题,但是我在想弄清楚什么是错的.我希望somone能得到答案!

java gradle fatjar

10
推荐指数
2
解决办法
3218
查看次数

标签 统计

fatjar ×1

gradle ×1

java ×1