I am not developing a Android Application ,
I'm just writing some JAVA codes to support Imgur API services.
public interface ImgurAPI {
String server = "https://api.imgur.com";
String BASE64 = "base64";
@POST("/3/upload")
void postImage(
@Header("Authorization") String auth,
@Query("title") String title,
@Query("description") String description,
@Query("type") String type,
@Body String base64Image,
Callback<ImageResponse> cb
);
}
Main :
public static void main(String[] args) {
try{
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(ImgurAPI.server)
.build();
ImgurAPI myAPI = retrofit.create(ImgurAPI.class);
String base64Image = new ImageReader(PATH).getBase64String();
myAPI.postImage(AUTH, "Hi", "Test", ImgurAPI.BASE64, base64Image, new MyCallBack());
}catch(Exception err){
err.printStackTrace();
}
}
and the exception throwing :
Exception in thread "main" java.lang.NoClassDefFoundError: okhttp3/Call$Factory
at Main.main(Main.java:14)
Caused by: java.lang.ClassNotFoundException: okhttp3.Call$Factory
I found out lots of solutions of Android.
So I'm wondering if Retrofit available in only JAVA.
thanks .
I solved it , If you are writing Java (Only Java), And you downloaded the Jar of Retrofit2, It might not contain certain libraries which built-in in Android Studio, So you have to download them manually.
Import the jar files , then It could work