IntelliJ使用Azul Java11时java.net.http包导入找不到如何解决?
解决方案
1. 首先修正导入语句大小写
你写的导入语句类名格式错误,正确的Java 11 HttpClient导入语句为:import java.net.http.HttpClient;java.net.http包下的类均为首字母大写命名,小写的httpclient不存在,修正后如果仍然报错,按以下步骤排查项目配置。
2. 排查IntelliJ项目配置
- 核对项目基础配置:打开
File > Project Structure > Project Settings > Project,确认两项配置:- SDK选择为你安装的Azul Java 11.0.13版本
- 语言级别选择11 - Local variable syntax for lambda parameters, etc.,不能低于11(java.net.http包是Java 11正式纳入标准库的API)
- 核对模块SDK配置:在Project Structure页面切换到
Modules标签,选中当前项目模块,切换到Dependencies标签页,确认Module SDK也为Azul Java 11,不要使用低于11的其他版本SDK - 核对构建工具配置(Maven/Gradle项目适用):
如果你使用Maven管理项目,打开pom.xml确认maven-compiler-plugin的编译版本为11:
如果你使用Gradle管理项目,打开build.gradle确认编译版本配置:<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>11</source> <target>11</target> </configuration> </plugin>sourceCompatibility = '11' targetCompatibility = '11' - 清除缓存重启:执行
File > Invalidate Caches...,勾选清除文件系统缓存选项,点击重启IDEA,重启后重新编译项目即可。
部署注意事项
Azul官方为树莓派Zero W对应的ARM32硬浮点架构提供的Zulu 11 JRE完整包含java.net.http模块,只要你在树莓派上部署的是同版本的Azul Java 11运行环境,不会出现运行时找不到类的问题。
内容的提问来源于stack exchange,提问作者Al Grant
相关产品推荐
相关产品推荐

