Ошибка при использовании адаптера Retrofit Rest: NoClassDefFoundError: Retrofit.Restadapter$Builder

Мое приложение всегда падает, когда я создаю экземпляр RestAdapter

private void submitForm(SignupForm form){
    RestAdapter adapter = new RestAdapter.Builder()
                .setEndpoint(ENDPOINT)
                .build();
        SignUpApi signUpApi = adapter.create(SignUpApi.class);
    signUpApi.sendStudentForm(form);
}

я также включил файл retrofit.jar и файл Gson.jar. Аналогичный вопрос здесь, но я не использую gradle.

Трассировки стека:

02-06 13:04:13.021: D/mali_winsys(22638): new_window_surface возвращает 0x3000

02–06 13:04:16.876: E/dalvikvm(22638): не удалось найти класс «retrofit.RestAdapter$Builder», на который ссылается метод com.example.squiz.SignupActivity.submitForm.

02-06 13:04:16.876: W/dalvikvm(22638): VFY: невозможно разрешить новый экземпляр 55 (Lretrofit/RestAdapter$Builder;) в Lcom/example/squiz/SignupActivity;

02-06 13:04:16.876: D/dalvikvm(22638): VFY: замена кода операции 0x22 на 0x0000

02-06 13:04:16.881: D/dalvikvm(22638): DexOpt: невозможно выбрать прямой вызов 0x004c по адресу 0x02 в Lcom/example/squiz/SignupActivity;.submitForm

02-06 13:04:16.881: W/ApplicationPackageManager(22638): getCSCPackageItemText()

02-06 13:04:16.956: D/mali_winsys(22638): new_window_surface возвращает 0x3000

02-06 13:04:18.596: D/AndroidRuntime(22638): завершение работы виртуальной машины

02-06 13:04:18.596: W/dalvikvm(22638): threadid=1: поток завершается с необработанным исключением (группа=0x416cfc08)

02-06 13:04:18.596: E/AndroidRuntime(22638): НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: основной

02-06 13:04:18.596: E/AndroidRuntime(22638): Процесс: com.example.squiz, PID: 22638

02-06 13:04:18.596: E/AndroidRuntime(22638): java.lang.NoClassDefFoundError: retrofit.RestAdapter$Builder

02-06 13:04:18.596: E/AndroidRuntime(22638): в com.example.squiz.SignupActivity.submitForm(SignupActivity.java:66)

02-06 13:04:18.596: E/AndroidRuntime(22638): в com.example.squiz.SignupActivity.access$5(SignupActivity.java:65)

02-06 13:04:18.596: E/AndroidRuntime(22638): в com.example.squiz.SignupActivity$1.onClick(SignupActivity.java:55)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.view.View.performClick(View.java:4630)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.view.View$PerformClick.run(View.java:19339)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.os.Handler.handleCallback(Handler.java:733)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.os.Handler.dispatchMessage(Handler.java:95)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.os.Looper.loop(Looper.java:157)

02-06 13:04:18.596: E/AndroidRuntime(22638): в android.app.ActivityThread.main(ActivityThread.java:5335)

02–06 13:04:18.596: E/AndroidRuntime (22638): в java.lang.reflect.Method.invokeNative (собственный метод)

02-06 13:04:18.596: E/AndroidRuntime(22638): в java.lang.reflect.Method.invoke(Method.java:515)

02-06 13:04:18.596: E/AndroidRuntime(22638): в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)

02-06 13:04:18.596: E/AndroidRuntime(22638): в com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)

02–06 13:04:18.596: E/AndroidRuntime (22638): в dalvik.system.NativeStart.main (собственный метод)

02-06 13:04:19.896: I/Process(22638): Отправка сигнала. PID: 22638 SIG: 9

02-06 13:04:20.181: W/ApplicationPackageManager(25502): getCSCPackageItemText()

02-06 13:04:20.181: I/PersonaManager(25502): getPersonaService() name persona_policy

02-06 13:04:20.226: D/dalvikvm(25502): GC_FOR_ALLOC освобождено 51K, 7% свободно 16826K/18032K, пауза 19мс, всего 19мс

02-06 13:04:20.256: I/dalvikvm-heap(25502): увеличить размер кучи (фрагментарный регистр) до 24,879 МБ для выделения 7680016 байт.

02-06 13:04:20.266: D/dalvikvm(25502): GC_FOR_ALLOC освобождено ‹1K, 5% свободно 24326K/25536K, пауза 10 мс, всего 10 мс

02-06 13:04:20.351: I/(25502): ВЕРСИЯ ПЛАТФОРМЫ: JB-MR-2

02-06 13:04:20.366: D/mali_winsys(25502): new_window_surface возвращает 0x3000

02-06 13:04:20.391: D/OpenGLRenderer(25502): включение режима отладки 0


person Haitham Khedr    schedule 05.02.2015    source источник
comment
Опубликуйте всю трассировку стека.   -  person Jake Wharton    schedule 05.02.2015
comment
я тоже сталкиваюсь с такой же проблемой   -  person raditya gumay    schedule 12.04.2016


Ответы (1)


Я исправляю эту проблему, добавляя

packagingOptions {
    exclude 'META-INF/maven/com.squareup.retrofit/retrofit/pom.properties'
    exclude 'META-INF/maven/com.squareup.retrofit/retrofit/pom.xml'
}

в градле.

Моя сетевая библиотека

compile 'com.squareup.okio:okio:1.6.0'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.squareup.retrofit2:retrofit:2.0.1'
compile 'com.squareup.retrofit2:converter-gson:2.0.1'
compile 'com.squareup.okhttp3:logging-interceptor:3.2.0'
compile 'com.squareup.okhttp3:okhttp:3.2.0'
compile 'com.squareup.okhttp3:okhttp-urlconnection:3.2.0'
person raditya gumay    schedule 12.04.2016