NoClassDefFoundError en tiempo de ejecución con Gradle
Estoy usando gradle como el complemento JavaFX. Todo funciona perfectamente incluso después de construir y ejecutar lo excelente endistribución/, excepto con una clase:CloseableHttpClient
Para varios propósitos, creo el siguiente objeto como este:
CloseableHttpClient client = HttpClients.createDefault();
Ejecutar el programa en el IDE no es un problema, todo funciona bien. Pero si compilo e intento ejecutar el archivo .exe obtengo lo siguienteThrowable
-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)...
Realmente no entiendo eso. ¿Cómo puede ser que solo esta clase no se encuentre, pero todas mis otras clases sí?
Mi archivo 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'
}
}
}
Por favor escriba un comentario si necesita más información. Gracias.