Retrofit2,maven项目,非法反射访问警告

8 浏览
0 Comments

Retrofit2,maven项目,非法反射访问警告

我刚刚开始了一个新的Maven项目,并对Retrofit客户端进行了简单的实现。我收到了以下警告:

警告:发生了非法的反射访问操作
警告:retrofit2.Platform(文件:/C:/ Users / Admin / .m2 / repository / com / squareup / retrofit2 / retrofit / 2.8.1 / retrofit-2.8.1.jar)通过反射访问了java.lang.invoke.MethodHandles $ Lookup(java.lang.Class,int)的构造函数
警告:请考虑向retrofit2.Platform的维护人员报告此问题
警告:使用--illegal-access = warn启用进一步非法反射访问操作的警告
警告:在未来版本中,将拒绝所有非法访问操作
进程完成,退出代码为0

以下是代码:

import retrofit2.Retrofit;
import retrofit2.SimpleXmlConverterFactory;
import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
public class RetrofitClient {
    private static Retrofit retrofit = null;
    
    private RetrofitClient() { }
    
    public static EndPoints getAPI(String baseUrl) {
        if (retrofit == null) {
            retrofit = new Retrofit.Builder()
                    .baseUrl(baseUrl)
                    .addConverterFactory(SimpleXmlConverterFactory.create())
                    .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
                    .build();
        }
        return retrofit.create(EndPoints.class);
    }
}

接口很简单:

import retrofit2.Call;
import retrofit2.http.GET;
public interface EndPoints {
    @GET("teststatuses")
    Call testStatus();
}

调用如下:

EndPoints endPoints = RetrofitClient.getAPI("http://localhost:8080/");
Call repos = endPoints.testStatus();
System.out.println(repos.execute());

该项目使用Java语言级别11和SDK 11运行。

0