java.lang.NoClassDefFoundError: com / fastxml / jackson / databind / JsonMappingException

Nov 20 2020

Я пытаюсь отправить текстовое сообщение следующего Twilio учебника с помощью кода Java здесь , но я получаю java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/JsonMappingExceptionна линии 13 в моем коде , где я пишуService service = Service.creator("My First Messaging Service").create();

Я пробовал следовать этому потоку и добавил все необходимые зависимости, но я не знаю, где использовать @JsonIgnore в моем коде. Вызвано: java.lang.NoClassDefFoundError: com / fastxml / jackson / databind / JsonMappingException $ Reference

Как я могу решить эту проблему? Пожалуйста, помогите мне как это исправить. Вот мой код Java

import com.twilio.Twilio;
import com.twilio.rest.messaging.v1.Service;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.core.*;
public class SMSOTP 
{
    public static final String ACCOUNT_SID = System.getenv("TWILIO_ACCOUNT_SID");
    public static final String AUTH_TOKEN = System.getenv("TWILIO_AUTH_TOKEN");
    public static void main(String[] args) 
    {
        Twilio.init(ACCOUNT_SID, AUTH_TOKEN);
        Service service = Service.creator("My First Messaging Service").create();

        System.out.println(service.getSid());
    }
}

Ответы

1 GuriqbalSingh Nov 21 2020 at 03:17

Для любого, кто пришел сюда в поисках решения, это серьезная проблема зависимости. У меня было 3 API-интерфейса Джексона (аннотации, привязка данных и ядро), добавленные вручную в мой проект, и это было проблемой. На самом деле это требовало большего.

Итак, что я сделал, это переключился на проект Maven, выполнив преобразование существующего проекта Eclipse в проект Maven и в pom.xml, <builds>я скопировал и вставил все, <plugins>что twilio, необходимое для работы отсюдаhttps://github.com/twilio/twilio-java/blob/main/pom.xml

Благодаря @ MichałZiober за предложение, в конечном итоге это сработало.

Надеюсь, это поможет кому-нибудь часами ломать голову :) Goodluck!