当我想从我的 gradle 项目运行 jar 时,它显示:
Exception in thread "main" java.lang.NoClassDefFoundError: org/ini4j/InvalidFileFormatException
我的 build.gradle 简而言之:
apply plugin: 'java'
apply plugin: 'pmd'
apply plugin: 'application'
apply plugin: 'eclipse'
version = "0.0.0"
group= "grm"
mainClassName = 'grm.bol.Launcher'
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
compile group: 'org.ini4j', name: 'ini4j', version: 'latest.release'
}
jar {
manifest {
attributes "Main-Class": "grm.bol.Launcher"
attributes "Class-Path": configurations.compile.collect { it.getName() }.join(' ')
}
}
当我在 Eclipse 中运行时,ini4j 工作正常,没有任何磨损。构建 gradle 任务也成功。但即使生成的 manifest.mf 看起来像这样,我也无法运行它:
Manifest-Version: 1.0
Main-Class: grm.bol.Launcher
Class-Path: ini4j-0.5.2.jar
有人知道清单发生的原因吗?