windows java 1.7和linux 1.7之间的差异

windows java 1.7和linux 1.7之间的差异,java,linux,windows,Java,Linux,Windows,我发现windows上当前版本的1.7和linux上的1.7之间的差异越来越大。例如,Linux中不存在Files.ReadAllBytes(Path Path)(生成编译器错误指示无效方法)以及捕获短语中的us“| |”,因此两个或多个异常将通过同一代码处理 是否有人知道分歧的程度,以及是否计划为不同平台保留不同版本的功能 问候 Theo.既然您说|在catch语句中不受支持,您很可能在linux上使用JDK 1.6。还有文件.ReadAllBytes(路径)是公共API的一部分,因此它在支持

我发现windows上当前版本的1.7和linux上的1.7之间的差异越来越大。例如,Linux中不存在Files.ReadAllBytes(Path Path)(生成编译器错误指示无效方法)以及捕获短语中的us“| |”,因此两个或多个异常将通过同一代码处理

是否有人知道分歧的程度,以及是否计划为不同平台保留不同版本的功能

问候


Theo.

既然您说
|
catch
语句中不受支持,您很可能在linux上使用JDK 1.6。还有
文件.ReadAllBytes(路径)
是公共API的一部分,因此它在支持JDK的每个平台上都可用。此方法是JDK 1.7中添加的NIO2 JSR的一部分,但在JDK 1.6中不可用


您可以在shell中使用
java-version
来检查路径中的版本。

文件#readAllBytes
是该语言的官方规范的一部分。这听起来更像是您安装了错误的JDK或使用了错误的版本。请尝试在命令行中使用
javac-version
,看看您得到了什么。另外,您是如何在linux上构建程序的?命令行、IDE和其他构建过程?您指的是哪个发行版(Oracle、OpenJDK、IBM等)?如果Windows和Linux JDK的版本相同且来自Oracle,那么Windows和Linux JDK之间不会有什么区别。事实上,OpenJDK和Oracle版本之间的差异非常小