我没有开发Android应用程序, 我只是编写一些JAVA代码来支持Imgur API服务。
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
);
}
主要:
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();
}
}
抛出异常:
Exception in thread "main" java.lang.NoClassDefFoundError: okhttp3/Call$Factory
at Main.main(Main.java:14)
Caused by: java.lang.ClassNotFoundException: okhttp3.Call$Factory
我发现了很多Android的解决方案。所以我想知道只有JAVA才能提供Retrofit。 谢谢 。
我解决了它,如果您正在编写Java(仅Java),并且您下载了Jar of Retrofit2,它可能不包含Android Studio中内置的某些库,因此您必须手动下载它们。
导入jar文件,然后它可以工作
如果在Java EE项目中使用Influxdb-java.jar时遇到此错误后查找解决方案时发现此帖子,则需要以下依赖项:
解决这个问题很烦人,所以希望它有所帮助。