有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java spring编译错误:无法访问ParameterizedTypeReference

我的任务是修改一个旧的Spring应用程序,我需要添加一些rest调用。当我尝试使用RestTemplate时,我遇到了一系列错误,并结束了从Spring2的升级。x到4。x、 我现在得到:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-
plugin:2.3.2:compile (default-compile) on project adddrop: Compilation failure
[ERROR] /Users/jim/Documents/Dev/academic-addDrop-
web/src/main/java/edu/addDrop/web/FormPageController.java:[744,4] error: 
cannot access ParameterizedTypeReference

我运行了一个MVN依赖关系树,看到其他jar文件正在使用Spring3.1.1。所以我换了那个,但运气不好。在我的POM中,有弹簧芯:

<properties>
    <spring.version>3.1.1.RELEASE</spring.version>
</properties>

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>${spring.version}</version>
</dependency>    

我认为这是一个依赖性问题,但无休止的谷歌搜索毫无结果。我想不出这门课应该在哪里

private ArrayList<String> getHarvardOpenSchools()
{
    RestTemplate rt = new RestTemplate();

    HttpHeaders headers = new HttpHeaders();
    headers.set("client_id", "3f36*********");
    headers.set("client_secret", "7251********");


    String url = "https://mit-cross-registration-v1-early-xreg.cloudhub.io/outgoing/stub/institutions/harvard/schools/xreg/open";

    HttpEntity entity = new HttpEntity(headers);

    // This is the offending line, 744
    rt.exchange(url, HttpMethod.GET, entity, String.class);


    ResponseEntity<String> response = rt.getForEntity(url, String.class); 

    ObjectMapper mapper = new ObjectMapper();

    try
    {
        XregUniversity u = mapper.readValue(response.getBody(), XregUniversity.class);
        return u.getSchools();
    }
    catch(Exception e)
    {
        return new ArrayList<String>();
    }

}

此外,Eclipse发出以下警告:

 The type org.springframework.core.ParameterizedTypeReference cannot be resolved. It is indirectly referenced from required .class files

更新:

如果我切换到Spring 4.2.1。RELEASE I随后出现以下编译错误:

 error: cannot access LabeledEnum

共 (1) 个答案

  1. # 1 楼答案

    ParameterizedTypeReference包含在spring-core中。从3.2开始,您应该使用更高版本的spring。使用spring 4spring 5