1

所以我正在使用 Java SE 1.7.0_9(我认为是最新版本),我正在尝试使用 java.nio.file.Files 类来处理文件。但是,每当我尝试访问 Java 版本 7 中添加到 java.nio 包中的类之一(例如 .file 或 .attribute)时,编译器都会返回此错误:

attend.java:4: package java.nio.file does not exist
import java.nio.file.*;
^
attend.java:5: package java.nio.file.attribute does not exist
import java.nio.file.attribute.*;
^
2 errors

我想也许我对我使用的版本有误,所以我检查了我的版本,它返回了这个:

[04:31 PM]java: java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)

老实说,我无法弄清楚发生了什么。谁可以帮我这个事?

编辑:我还想指出,Java SE 7 中引入的新的 try-with-resources 语句也让我的编译器抱怨它不是一个有效的语句。就好像我根本没有真正使用 Java SE 7,这非常令人沮丧。

已解决:事实证明,虽然这些机器运行的是 Java SE 1.7.0_9,但它们默认使用 1.6.0_37 版本的 javac 编译器。我需要做的就是弄乱路径以确保它转到 1.7.0 版本。谢谢您的帮助!

4

3 回答 3

1

显然,您根本没有使用 JDK 1.7 进行编译,而是使用了更早的 JDK。检查您的设置。

于 2012-11-02T21:21:20.107 回答
0

另一个更牵强的错误是您让 JDK 1.7 编译为 1.6。这是一个编译器命令行选项、IDE 选项、maven 选项。

于 2012-11-02T21:28:35.193 回答
-1

检查您是否引用了正确的 JDK。如果您使用的是 Eclipse,则应在“属性”-“Java 构建路径”-“库”中指定它

于 2012-11-02T20:54:13.243 回答