我使用gradle作爲JavaFX插件。 一切,即使在分佈/建設和運行過程中出現的excecutable後完美的作品,除了有一類:CloseableHttpClient
NoClassDefFoundError在運行時使用Gradle
用於多種用途創建下列對象是這樣的:
CloseableHttpClient client = HttpClients.createDefault();
運行的程序IDE沒有問題,一切正常。但是,如果我建立並嘗試運行.exe文件,文件我得到以下Throwable
-StackTrace:
java.lang.NoClassDefFoundError: Could not initialize class org.apache.http.conn.ssl.SSLConnectionSocketFactory
at org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:955)
at org.apache.http.impl.client.HttpClients.createDefault(HttpClients.java:58)
at ch.itcb.tools.lom.util.JsonSimpleUtil.http(JsonSimpleUtil.java:29)...
我真的不明白。怎麼可能只是這個班級沒有找到,但我所有的其他班級呢?
我的build.gradle文件:
apply plugin: 'java'
apply plugin: 'eclipse'
apply from: 'javafx.plugin'
sourceCompatibility = 1.8
version = '0.1'
jar {
manifest {
attributes 'Implementation-Title': 'LogoffManager',
'Implementation-Version': version
}
}
repositories {
mavenCentral()
}
dependencies {
compile fileTree(dir: 'lib', include: ['*.jar'])
compile 'ch.qos.logback:logback-classic:1.1.3'
compile 'org.apache.httpcomponents:httpclient:4.5.1'
compile 'com.googlecode.json-simple:json-simple:1.1'
compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
testCompile group: 'junit', name: 'junit', version: '4.+'
}
test {
systemProperties 'property': 'value'
}
uploadArchives {
repositories {
flatDir {
dirs 'repos'
}
}
}
請寫一個評論,如果您需要了解更多信息。謝謝。
請分享您的build.gradle文件。 – Opal
@Opal完成。仍然沒有找到解決方案:/ – jntme
分發中的apache jar嗎?它是否包含缺少的課程? –