NoClassDefFoundError al usar la API de Java Coinbase

Simplemente descargué un .jararchivo API de un archivo Coinbase. He creado un proyecto dynamic web project. Agregué con éxito en una biblioteca de referencia esa API.

Aquí está mi programa simple:

import com.coinbase.api.Coinbase;
import com.coinbase.api.CoinbaseBuilder;

public class Main {
    public static void main(String[] args){

        try {

            Coinbase cb=new CoinbaseBuilder()
            .withApiKey(System.getenv("My API KEY"), System.getenv("MY API SECRET"))
            .build();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Mientras ejecuto este programa, dice:

Exception in thread "main" java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/type/TypeReference
    at com.coinbase.api.CoinbaseBuilder.build(CoinbaseBuilder.java:16)
    at Main.main(Main.java:11)
Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.core.type.TypeReference
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 2 more

¿Tengo que poner algo aquí? Me revisaron tres veces, ¡mi clave API es correcta!

Esta pregunta parece estar fuera de tema porque se trata de un error genérico de Java en lugar de un problema relacionado con Bitcoin, ya existe una solución en: stackoverflow.com/questions/17973970/…
@GeorgeKimionis No estoy de acuerdo. Probablemente sería mejor preguntarlo en otro sitio, pero no creo que esté fuera de tema.
@GeorgeKimionis Sin embargo, gracias por encontrar ese enlace. Esa probablemente podría ser una respuesta si citaste una de las respuestas en esa página.
@NickODell, sea mi invitado y use ese enlace como quiera.

Respuestas (1)

Bueno, el problema es que Coinbase Java Api depende del procesador Jackson JSON, junto con varias otras dependencias que se pueden encontrar aquí , y asumo que el jar que descargó no vino con todas estas dependencias empaquetadas en su interior. lo que significa que no estarán en su classpath solo porque haya agregado el contenedor de base de monedas. Podría intentar resolver estas dependencias manualmente, lo que sería increíblemente tedioso e innecesario, o podría usar una herramienta de automatización de compilación. Teniendo en cuenta que la API Java de Coinbase se creó teniendo en cuenta esto, recomendaría configurar su proyecto para usar Maven .