Java получает NoSuchMethodError после стирания GenericsJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Java получает NoSuchMethodError после стирания Generics

Сообщение Гость »


Я использую gitlab4j стороннего производителя (пробовал версию 5.0.1, а также 5.3.0), который использует внутренний jersey-client (версии 2.35 и 2.39.1 соответственно) ). Я получаю NoSuchMethodError из кода jersey-client.

Мне удалось создать аналогичный небольшой проект (Github), имитирующий мой код. установка с теми же версиями jar (проверено вместе со всеми транзитивными зависимостями), скомпилировано с тем же плагином компилятора maven (3.1), работает с той же версией Java (11.0.20) --> и в этом проекте код работает хорошо и не дает сбоев.

Это настройка соответствующих классов:

Интерфейс MultivaluedMap содержит метод void addAll(K key, V... newValues). во время выполнения создается экземпляр StringKeyIgnoreCaseMultivaluedMap (это означает, что K — это String, а V — это Объект)

Этот фрагмент кода вызвал ошибку:

public void Accept (окончательные типы String...) { getHeaders().addAll(HttpHeaders.ACCEPT, (Object[]) типы); } getHeaders возвращает экземпляр в интерфейсе MultivaluedMap. Фактический код addAll находится в классе, объявленном как AbstractMultivaluedMap (это экземпляр приведенного выше StringKeyIgnoreCaseMultivaluedMap, который расширяет AbstractMultivaluedMap).

Я получаю сообщение об ошибке:

Вызвано: java.lang.NoSuchMethodError: javax.ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V в org.glassfish.jersey.client.ClientRequest.accept(ClientRequest.java:280) в org.glassfish.jersey.client.JerseyInvocation$Builder.accept(JerseyInvocate.java:242) в org.glassfish.jersey.client.JerseyInvocation$Builder.accept(JerseyInvocate.java:165) ... Еще раз: этот код хорошо работает в моем примере небольшого проекта и дает сбой только в моем основном проекте.

Есть идеи?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Java получает NoSuchMethodError из-за нескольких зависимостей [дубликат]
    Гость » » в форуме JAVA
    0 Ответы
    16 Просмотры
    Последнее сообщение Гость
  • Функция стирания строк в C++
    Гость » » в форуме C++
    0 Ответы
    11 Просмотры
    Последнее сообщение Гость
  • Проблемы стирания типов C#
    Anonymous » » в форуме C#
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Ввод командной строки Python не удаляет японские символы при нажатии клавиши стирания
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Android Compose нарисуйте путь для стирания переднего плана
    Anonymous » » в форуме Android
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»