Я компилирую java в IntelliJ (сообщество 2019.2) на MacBook.
Мой код:
import com.google.common.collect.Sets;
public static void main(String[] args) {
Sets.newConcurrentHashSet();// error ! cannot resolve the method !
}
мой пом:
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>20.0</version>
</dependency>
</dependencies>
на основе
https://github.com/google/guava/blob/master/guava/src/com/google/common/collect/Sets.java
Sets.newConcurrentHashSet();
должен быть доступен.
Но почему я не могу это назвать?
ОБНОВЛЕНИЕ Я запустил
mvn dependency:tree
получил:
+- com.google.guava:guava:jar:28.1-jre:compile
[INFO] | +- com.google.guava:failureaccess:jar:1.0.1:compile
[INFO] | +- com.google.guava:listenablefuture:jar:9999.0-empty-to- avoid-conflict-with-guava:compile
Я не вижу других зависимостей, связанных с гуавой.
Когда я проверил:
ls -lrt ~/.m2/repository/com/google/guava/guava
Я вижу:
28.1-jre
14.0.1
16.0.1
19.0
12.0.1
11.0.2
27.0-jre
Хотя я удалил все другие версии, кроме 28.1- jre, другие версии создаются автоматически всякий раз, когда я компилирую проект или открываю IntelliJ.
Я не знаю, почему это могло произойти.