IDEA Error:java:无效的源发行版:13的解决过程

 

问题:

Information:java: Errors occurred while compiling module ‘day02-oop-demo’

Information:javac 1.8.0_231 was used to compile java sources

Information:Module “day02-oop-demo” was fully rebuilt due to project configuration/dependencies changes

Information:2022/9/25 15:38 - Build completed with 1 error and 0 warnings in 2 s 769 ms

Error:java: 无效的源发行版: 13

 

翻译过来是:

信息:java:编译模块“day02 oop demo”时出错

信息:javac 1.8.0_231用于编译java源代码

信息:由于项目配置/依赖项更改,模块“day02 oop demo”已完全重建

信息:2022/9/25 15:38-生成完成,在2 s 769 ms内出现1个错误和0个警告

错误:java:无效的源发行版: 13

 

原因是你的JDK版本低于你要实现的功能

我出错的原因是我的jdk是8的版本,接口不允许使用私有方法

在JDK9开始支持的私有方法且必须在接口内部才可以访问

package com.tjrac.d13_interface_jdk8;

public interface SportManInter {
  /*
      1、JDK8新增:默认方法(实例方法)
      -- 必须default修饰,默认public
      --默认方法,接口不能创建对象,接口被实现类实现后调用只能用:实现类对象.默认方法
   */
  default void run(){
      System.out.println("跑得快");
      //hhh();
  }
  /*
      2、静态方法
      -- 必须static修饰,默认public
   */
  static void study(){
      System.out.println("我们都在学习");
  }
  /*
      3、JDK9开始支持的私有方法
      必须在接口内部才可以访问
   */
  //private void hhh(){
  //    System.out.println("笑哈哈");
  //}
}

class PingPongMan implements SportManInter{
}

class Test{
  public static void main(String[] args) {
      PingPongMan man = new PingPongMan();
      man.run();

      SportManInter.study();//接口名直接调用接口的静态方法
      //man.study();//不能用实现类的对象来调用
  }
}

 

解决方法:

第一步

打开Setting,选择自己用的版本

请添加图片描述

第二步

在file找到Project Structure

第三步

在Project Structure里找到Modules(模块),然后选择当前出现问题的那个模块,在sources里选择和刚刚版本一样的版本。

最后重新运行程序就行了,不需要重启IDEA

 

总结

关于IDEA Error:java:无效的源发行版:13解决的文章就介绍至此,更多相关IDEA Error:java:无效的源发行版:13内容请搜索编程宝库以前的文章,希望以后支持编程宝库

spring boot连接redis时出现这个错误:org.springframework ...