You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使'import java.net.*'在JDK10的IntelliJ IDE中正常生效?

解决java.net导入置灰、找不到库的问题

嘿,我来帮你搞定这个困惑!首先得纠正一个关键误区:整个java.net包并没有被弃用,JDK 10里它还是Java核心类库的重要组成部分,你遇到的问题大概率是IDE配置或者导入未被使用的提示,不是包本身被移除了。

下面一步步帮你排查解决:

  • 检查IntelliJ IDEA的JDK配置
    先确认你的项目是不是真的关联了正确的JDK 10:

    1. 打开File → Project Structure(快捷键Ctrl+Alt+Shift+S)
    2. 切换到Project标签,确保Project SDK选择的是JDK 10,Project language level设置为对应JDK 10的级别(比如10 - Local variable type inference)
    3. 再到Modules → Dependencies里,确认依赖列表里的SDK是JDK 10,没有出现红色警告的缺失项
  • 导入置灰的真实原因
    IDEA会把代码中没有实际使用的导入语句置灰,提示你可以清理冗余代码。如果你只是写了import java.net.*;但没用到包里的任何类(比如URL、Socket、HttpURLConnection这些),它就会变灰,这完全不是因为包被弃用!你可以试着写一段用到java.net类的代码,导入语句马上就会恢复正常颜色。

  • 关于“GitHub托管Oracle弃用类”的补充
    你可能混淆了个别特定的类或方法,比如java.net包里确实有一些老旧的方法(比如URLConnection的某些过时方法)被标记为弃用,但整个包从来没被移除。如果真的需要某些被Oracle移除的边缘类,OpenJDK的源码确实托管在GitHub,但JDK 10本身就是基于OpenJDK的,核心类都已经包含在内,不需要额外去拉取弃用类。

  • 测试java.net可用性的小代码
    你可以跑这段代码验证一下:

    import java.net.URL;
    import java.io.IOException;
    
    public class NetTest {
        public static void main(String[] args) {
            try {
                URL testUrl = new URL("https://www.example.com");
                System.out.println("测试URL协议:" + testUrl.getProtocol());
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    如果这段代码能正常编译运行,说明java.net包完全可用,之前的问题就是IDE的小提示或者配置问题啦!

内容的提问来源于stack exchange,提问作者double07robinhood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:39:40