我正在使用 java 11,使用 sts IDE,我可以从 IDE 编译并运行 springboot 应用程序,但是当我使用 mvn 从命令行编译它时
mvn clean verify
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
cannot find symbol [ERROR] symbol: method toList()
Run Code Online (Sandbox Code Playgroud)
代码片段是
......
......
return addressRepository.getAddressesBySystemUserId(systemUserId).stream().map(e -> {
AddressDto dto = null;
dto = AddressMapper.mapAddressToAddressDto(e);
return dto;
}).toList();
......
Run Code Online (Sandbox Code Playgroud)
pom 文件的片段
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
Run Code Online (Sandbox Code Playgroud)
您需要使用.collect()Java 11 中的流来收集列表。在您的情况下:
return addressRepository.getAddressesBySystemUserId(systemUserId).stream().map(e -> {
AddressDto dto = null;
dto = AddressMapper.mapAddressToAddressDto(e);
return dto;
}).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)