Amazon Aws KMS + Gradle: NECLASSDEFFOUNDERROR -- java campo con amazon-web-services campo con intellij-idea campo con gradle camp Relacionados El problema

Amazon AWS KMS + Gradle: NoClassDefFoundError


1
vote

problema

Español

MI build.gradle :

  apply plugin: 'idea' apply plugin: 'java' apply plugin: 'application'  repositories {     mavenCentral() }  dependencies {     compile 'com.amazonaws:aws-java-sdk:1.11.171' }   

Mi archivo Java:

  import com.amazonaws.services.kms.AWSKMS; import com.amazonaws.services.kms.AWSKMSClientBuilder; import com.amazonaws.services.kms.model.GenerateDataKeyRequest; import com.amazonaws.services.kms.model.GenerateDataKeyResult;  import java.nio.charset.StandardCharsets;  public class KmsExample {      private static final String KEYID = "arn:aws:kms:us-east-1:[userid]:key/[cmk id]";      public static void main(String[] args) {         AWSKMS kms = AWSKMSClientBuilder.defaultClient();          GenerateDataKeyRequest dataKeyRequest = new GenerateDataKeyRequest();         dataKeyRequest.setKeyId(KEYID);         dataKeyRequest.setKeySpec("AES_128");          GenerateDataKeyResult dataKeyResult = kms.generateDataKey(dataKeyRequest);          String plaintextKey = StandardCharsets.UTF_8.decode(dataKeyResult.getPlaintext()).toString();          String encryptedKey = StandardCharsets.UTF_8.decode(dataKeyResult.getCiphertextBlob()).toString();          System.out.println(plaintextKey + " | " + encryptedKey);     }  }   

lo suficientemente simple. Sin embargo, cuando ejecuto mi archivo, me da NoClassDefFoundError ERROR:

  [{"docentnaam":"Alex"},{"docentnaam":"Jos"},{"docentnaam":"Dick"},{"docentnaam":"Annemarije"},{"docentnaam":"Martijn"},{"docentnaam":"John"},{"docentnaam":"Bart"},{"docentnaam":"Bart"},{"docentnaam":"Peter"},{"docentnaam":"Dietske"},{"docentnaam":"Peter"}]0  

En IntelliJ, veo que mis archivos se han importado bien, y todos los frascos están ahí: ingrese la descripción de la imagen aquí

CTRL / CMD + b para saltar a la declaración de archivos funciona bien, demostrando que el archivo está ahí.

Entonces, ¿por qué sigo obteniendo un NEXLASSDEFFOUNDERROR?

Original en ingles

My build.gradle:

apply plugin: 'idea' apply plugin: 'java' apply plugin: 'application'  repositories {     mavenCentral() }  dependencies {     compile 'com.amazonaws:aws-java-sdk:1.11.171' } 

My Java file:

import com.amazonaws.services.kms.AWSKMS; import com.amazonaws.services.kms.AWSKMSClientBuilder; import com.amazonaws.services.kms.model.GenerateDataKeyRequest; import com.amazonaws.services.kms.model.GenerateDataKeyResult;  import java.nio.charset.StandardCharsets;  public class KmsExample {      private static final String KEYID = "arn:aws:kms:us-east-1:[userid]:key/[cmk id]";      public static void main(String[] args) {         AWSKMS kms = AWSKMSClientBuilder.defaultClient();          GenerateDataKeyRequest dataKeyRequest = new GenerateDataKeyRequest();         dataKeyRequest.setKeyId(KEYID);         dataKeyRequest.setKeySpec("AES_128");          GenerateDataKeyResult dataKeyResult = kms.generateDataKey(dataKeyRequest);          String plaintextKey = StandardCharsets.UTF_8.decode(dataKeyResult.getPlaintext()).toString();          String encryptedKey = StandardCharsets.UTF_8.decode(dataKeyResult.getCiphertextBlob()).toString();          System.out.println(plaintextKey + " | " + encryptedKey);     }  } 

Simple enough. However, when I run my file it gives me NoClassDefFoundError error:

Exception in thread "main" java.lang.NoClassDefFoundError:  com/amazonaws/services/kms/AWSKMSClientBuilder at KmsExample.main(KmsExample.java:13) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)  Caused by: java.lang.ClassNotFoundException:  com.amazonaws.services.kms.AWSKMSClientBuilder at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 6 more 

In IntelliJ, I see my files have been imported fine, and all the JARS are there: enter image description here

Ctrl/Cmd + B to jump to file declaration works fine, proving that the file is there.

So why am I still getting a NoClassDefFoundError?

           

Lista de respuestas

2
 
vote

Le falta la dependencia que contiene -x5094 clase. Simplemente agregue lo siguiente a su -x5095 :

  -x5096  
 

You are missing the dependency that contains AWSKMSClientBuilder class. Just add the following to your build.gradle:

compile group: 'com.amazonaws', name: 'aws-java-sdk-kms', version: '1.11.171' 
 
 

Relacionados problema

1  Solicitud de consola de Java Gradle  ( Gradle java console application ) 
Estoy escribiendo una aplicación de consola con Java y Gradle. En mi solicitud de Java, estoy tratando de aceptar la entrada del usuario. Está funcionando sin...

7  Grabar tarea de runjar?  ( Gradle runjar task ) 
Estoy tratando de hacer una tarea para ejecutar mi archivo jar en Grindle. He surgido lo siguiente: task runJar(dependsOn:[jar]){ ant.java(jar:,fork:tr...

8  ¿Cómo depurar el servidor local de AppEngine de IDEA + Gratil?  ( How to debug the appengine local server from ideagradle ) 
Estoy siguiendo el curso del motor de aplicación de Udacity, pero como Tinker, estoy siguiendo el uso de Grandle e Idea (Edición de código abierto). He conf...

0  Eclipse Gradle MC Modding Bug  ( Eclipse gradle mc modding bug ) 
Entonces, este es el error que recibo cada vez que intento ejecutar: "Gradlew Eclipse" o "Gradlew Geneclipseruns" dentro del CMD. Could not resolve: net.mi...

0  Descargue el archivo de propiedades desde git y carga antes de la ejecución de cualquier tarea en Grados de grado  ( Download properties file from git and load before execution of any task in gradl ) 
Estoy teniendo un archivo test.properties que es común para 3 repositorio. Por lo tanto, he checkin Code en Git. Digamos que tengo TESTA, TESB y TESTC como tr...

12  Referencia no resuelta: JUnIT  ( Unresolved reference junit ) 
Estoy escribiendo un juego con Kotlin y LibgDX Framework. Soy nuevo en la prueba. He pasado un tutorial básico de cómo crear una prueba simple. Y cómo configu...

0  Error en "iónico cordova construir android"  ( Error on ionic cordova build android ) 
Estoy tratando de construir una aplicación en Android, pero siempre devuelve este error android_home = / usr / lib / android-sdk Java_Home = / USR / LIB ...

0  Configuración del proyecto CORDA: No se puede encontrar una ruta de certificación válida para el objetivo solicitado  ( Corda project setup unable to find valid certification path to requested target ) 
Estoy obteniendo struct Contact: Codable, Identifiable, CustomStringConvertible { var description: String { "name: (name)" } let...

4  Grieles / Plugin de Grados de Grados para Grails 2.0  ( Grails gradle plugin for grails 2 0 ) 
Estoy tratando de usar el complemento Griss-Grisle con Grails versión 2.0. Aquí está mi guión de compilación: buildscript { repositories { mave...

1  Error de construcción de Grises Javafx, java.util.zip.zipException: entrada duplicada: Meta-INF / License  ( Javafx gradle build error java util zip zipexception duplicate entry meta inf ) 
Estoy usando Gradécel para construir una aplicación Javafx. El problema que sigo entrando es un error "Entrada duplicada" para Meta-INF / License. Mi jarra ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos