[英]Intellij can't find java.net.http when compiling with Java 11
我正在嘗試讓我的項目之一為 Java 11 做好准備,但由於某種原因 Intellij 找不到java.net.http
。 它沒有像在module-info.java
中找不到那樣強調它,就像我輸入錯誤時那樣,但是當我嘗試構建項目時,出現以下錯誤。 我已嘗試重新安裝 Intellij 2018.2.3 並卸載 Java 的所有其他版本。任何有關如何使此工作正常運行的建議都將不勝感激。
錯誤:
Information:java: Errors occurred while compiling module 'crawler'
Information:javac 11 was used to compile java sources
Information:15/09/2018 11:16 - Compilation completed with 1 error and 0 warnings in 636 ms
C:\Users\Will\IdeaProjects\crawler\src\module-info.java
Error:(2, 22) java: module not found: java.net.http
模塊信息.java:
module crawler {
requires java.net.http;
}
請求.java:
package Request;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Request {
public static void main(String[] args) throws IOException, InterruptedException {
System.out.println("starting download");
String body = HttpClient.newBuilder().build().send(HttpRequest.newBuilder().uri(URI.create("https://example.com")).build(), HttpResponse.BodyHandlers.ofString()).body();
System.out.println("finished download:" + body);
}
}
結構:
crawler
src
Request
Request.java
module-info.java
我設置了錯誤的項目語言級別。 要使用java.net.http
您至少需要 11。要更改項目語言級別,請參閱: https : //www.jetbrains.com/help/idea/project-page.html
希望這可以幫助其他人。
對於那些在 2022 年遇到這個問題的人,即使這里提到的解決方案沒有幫助,我也能夠弄清楚問題是什么以及如何解決這個問題。
首先,我想確保問題不是出自我的 Maven 配置,所以我在終端中運行了以下命令:
mvn package
其次是:
java -cp target/covid-cases-cli-1.0-SNAPSHOT.jar org.matrixeternal.covidcasescli.App
它的構建沒有任何錯誤。 所以這意味着 IntelliJ 出了問題。
我正在使用 Java 17 並使用 IntelliJ 構建 Maven。 IntelliJ 使用自己的內部命令來構建項目。 要覆蓋此行為,您必須 go 到Preferences - Build, Execution & Deployment - Build Tools - Maven - Runner
和 select 選項Delegate IDE build/run actions to maven
這實際上將使用 m916081 工具文件直接從 18916081 工具文件安裝在系統中,而不是使用 IDE 命令。
將 IntelliJ 的編譯器設置為 Java 11 IntelliJ Idea-> Preferences-> Build, Execution, Deployment -> Java Compiler Select java 11 從下拉列表中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.