Java.lang.ClassNotFoundException: okio.Buffer при использовании OkHttp внутри плагина Eclipse (OSGi)JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Java.lang.ClassNotFoundException: okio.Buffer при использовании OkHttp внутри плагина Eclipse (OSGi)

Сообщение Anonymous »

Я разрабатываю плагин Eclipse (среда OSGi) и пытаюсь использовать OkHttp 4.11.0 для отправки HTTP-запросов. Однако я получаю следующую ошибку выполнения:

java.lang.ClassNotFoundException: okio.Buffer не может быть найден с помощью eclipseai.plugin_1.0.0

Минимальный воспроизводимый пример (MRE)

Код: Выделить всё

package eclipseai.test;

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;

public class OkHttpTest {

public static void main(String[] args) throws IOException {
OkHttpClient client = new OkHttpClient(); // ClassNotFoundException occurs here
Request request = new Request.Builder()
.url("https://www.google.com")
.build();

Response response = client.newCall(request).execute();
System.out.println(response.body().string());
}
}
Как воспроизводить внутри плагина Eclipse (OSGi)
  • Создайте новый проект плагина Eclipse (например, eclipseai.plugin).
  • Добавьте эти JAR-файлы в папку библиотеки/ плагина:
  • Добавьте их в MANIFEST.MF Bundle-ClassPath:

    Код: Выделить всё

    Bundle-ClassPath: .,
    library/okhttp-4.11.0.jar,
    library/okio-3.4.0.jar,
    library/kotlin-stdlib-2.2.21.jar
    
  • Добавьте их в build.properties bin.includes:

    Код: Выделить всё

    bin.includes = plugin.xml, META-INF/, .,
    library/okhttp-4.11.0.jar,
    library/okio-3.4.0.jar,
    library/kotlin-stdlib-2.2.21.jar
    
  • Запустите плагин → ClassNotFoundException возникает в okio.Buffer.
Как правильно включить OkHttp и Okio в плагин Eclipse, чтобы okio.Buffer правильно загружался, не вызывая ClassNotFoundException?

Подробнее здесь: https://stackoverflow.com/questions/798 ... -eclipse-p
Ответить

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

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

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

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

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