具有依赖项的 Intellij Gradle 构建 Jar

Intellij Grade Build Jar with dependencies

我想用 Gradle 在 IntelliJ IDEA 中构建一个 jar 文件。 当我 运行 我在 Intellij 中的代码一切正常时, 但是当我 运行 jar 文件时,我得到一个错误:

SQLExecption: No suitable driver found for jdbc:sqlite:/applications/elite-dangerous/database/ED_Database.db

我按构建按钮构建了 jar。

这对我来说很奇怪,因为当我在 IntelliJ IDEA 中 运行 它工作得很好。

使用 实现 配置包含的依赖项未包含在 Jar 中,这使得它们在运行时不可用。所以,我想可能是这样。您可以尝试将 implementation 更改为 compile dependencies(已弃用,因此不推荐)或者您可以将依赖项包含在 jar 中,如下所示

 jar {
    manifest {
        attributes 'Main-Class': 'eliteDangerousRestUpdater.Main'
    }
    from {
        compileJava.classpath.collect {
            it.isDirectory() ? it : zipTree(it)
        }
    }
}