【问题标题】:FileOutputStream with java 8 and try with resource gettng error [duplicate]使用 java 8 的 FileOutputStream 并尝试使用资源 gettng 错误 [重复]
【发布时间】:2020-03-05 17:53:30
【问题描述】:

我正在为 Eclipse 编写序列化代码我正在尝试将 FileOutputStream 与 try-with-resource 一起使用,但我收到一条错误消息:“对于低于 1.7 的源级别,此处不允许使用资源规范” 并且作为修复 Eclipse 显示消息“将项目合规性和 JRE 更改为 1.7”。这是我的一个新错误,请帮助。

public static void main(String[] args) {
    Employee employeeOut = null;

    try(FileOutputStream fos = new FileOutputStream("Employee.ser");
            ObjectOutputStream oos = new ObjectOutputStream(fos) ){

    }
}

我想编译这个类。

【问题讨论】:

  • 好的,所以我不能在 try-with 资源中使用它?
  • 作为修正使用 InputStream fos = new FileInputStream("Employee.ser")
  • ok 更正了代码,但我的问题没有解决。
  • 这是一个 maven 项目吗?
  • 是的,这是一个 Maven 项目

标签: java java-8 fileoutputstream objectoutputstream try-with-resources


【解决方案1】:

要在 Eclipse 中解决这个问题,右键单击项目,然后 properties > Java Build Path > Libraries > Add Library > JRE System Library,然后按照菜单选择。

您可以选择JDK的安装位置。

【讨论】:

    【解决方案2】:

    您的项目设置错误。要解决此问题,请右键单击您的项目,然后选择属性。
    选择“构建路径”,然后选择“库”选项卡。
    选择 JRE 系统库,然后单击“编辑...”。 选择“执行环境”“JavaSE-1.8”,然后选择“完成”。 现在选择左侧的“Java Compiler”。 确保选中“在‘Java Build Path’上使用执行环境‘JavaSE-1.8’的编译”。

    这应该可以解决您的问题。

    【讨论】:

      猜你喜欢
      • 2014-11-05
      • 2018-04-20
      • 2018-09-06
      • 1970-01-01
      • 1970-01-01
      • 2017-02-08
      • 2019-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多