我有一个在Idea中成功编译但未能由maven clean package
编译的代码。
代码是
import java.util.concurrent.*;
public class WebStatusMonitor {
private ConcurrentMap<String, Double> load = new ConcurrentHashMap<>();
public void handle(...) {
...
snapshot.add(String.format("cpu: %s", load.getOrDefault("cpu", 0.)));
...
}
编译失败,错误
[ERROR] WebStatusMonitor.java:[121,66] cannot find symbol
symbol: method getOrDefault(java.lang.String,java.lang.Double)
location: variable load of type java.util.concurrent.ConcurrentHashMap<java.lang.String,java.lang.Double>
我已经包含了我使用的内容(实际上所有内容都是由Idea自动包含的),这个代码甚至可以在Idea中成功编译。我错过了什么吗?
答案 0 :(得分:8)
看起来您的IDE使用java 8,而您的maven配置为使用java 7。