将jgit添加为gradle依赖项可防止我的主类成为加载器

时间:2018-08-05 15:43:04

标签: java gradle jgit

2小时前,我正在工作一个需要jgit的java(gradle)项目。我在build.gradle中添加了它,运行了./gradlew构建,并尝试java -jar构建输出。 它不再起作用,但是删除依赖项会使它再次起作用。注意它编译没有错误。 如果可以的话,这是我的build.gradle。 https://gist.github.com/Fungie2134/cb81cd1bd7d767d4d1f5d6317e71665d

2 个答案:

答案 0 :(得分:1)

您可能缺少Maven Central的存储库配置:

repositories {
    jcenter()

    // add this one:
    mavenCentral()

    maven { url "https://jitpack.io" }
}

请添加更多详细信息(相关的错误日志),以防无法回答问题。

答案 1 :(得分:0)

我发现了问题。我制作胖子的方式不对。使用这个

configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
带有这种库的

恰好阻止了.jar创建的正确进行。解决方案是使用Shadow。现在,罐子的创建是由./gradlew shadowJar完成的,罐子名为Launcher-all.jar