java - 鉴于 List 是 JRL 的一部分,为什么 javac 不能访问 List
问题描述
我正在尝试编译 Spring Boot 教程,但出现错误。
[ERROR] /Users/jimstockwell/Birds/application/src/main/java/com/okta/developer/BirdController.java:[23,35] cannot access List
class file for List not found
我正在使用 Maven,以及一个非常稀疏的 pom 文件。(我也直接尝试过javac。)
随着问题的发展,我会在评论中发布更多信息,因为发布整个项目似乎太过分了。:)
显然有问题的代码是:
package com.okta.developer;
import com.okta.developer.animals.bird.Bird;
import com.okta.developer.animals.bird.BirdPersistence;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class BirdController {
private BirdPersistence birdPersistence;
public BirdController(BirdPersistence birdPersistence) {
this.birdPersistence = birdPersistence;
}
@GetMapping("bird")
public List<Bird> getBird() {
return birdPersistence.get();
}
@PostMapping("bird")
public void saveBird(@RequestBody Bird bird) {
birdPersistence.save(bird);
}
}
(第 23 行是这样的:return birdPersistence.get();)
我不明白发生了什么事。由于 List 是 lang.util 的一部分,编译器怎么能说“无法访问 List”?
任何人都可以提供一些见解吗?提前致谢。
编辑:如果我改变 getBird 如下(并将 ArrayList 添加到导入),它编译得很好:
public List<Bird> getBird() {
return new ArrayList<Bird>();
/* return birdPersistence.get(); */
}
解决方案
推荐阅读
- django - 迭代在 Django 上创建的批量数据中的模型约束
- c++ - 为什么`using`关键字不能用于静态类成员?
- python - How to render timestamp according to the timezone in Python
- c# - 如何根据原点单元格获取周围网格单元格的圆圈
- android-studio - 警报通知不适用于 API>=26 android 模拟器
- email - 使用谷歌应用脚本发送的邮件中显示为“function () { [native code] }”的变量
- symfony5 - 我无法使用 symfony 5 创建实体 ~'ConsoleErrorEvent.php' 无法打开流:没有这样的文件或目录。~
- django - 供应商 ID 在电子商务应用程序 Django 中的放置位置
- javascript - 如何在地图 React JS 中使用 null
- python-3.x - 记录从目录中的文件检索到的每个模式的源文件名