首页 > 解决方案 > 显然 java 在 Linux 和 Windows 上没有相同的 nashorn.jar

问题描述

我正在尝试从 linux 中的 windows 配置我的工作区。

此代码在 Windows 中可以:

jdk.nashorn.internal.parser.JSONParser p = new jdk.nashorn.internal.parser.JSONParser(s, null);

在linux下得到如下错误:

constructor JSONParser in class JSONParser cannot be applied to different types

而且当我查看Linux下的源代码和Windows下的源代码时,我非常清楚地看到同一个类是不同的。

有谁知道这是为什么?如果是这样,这里就不适用WORA原则,这对我来说似乎很混乱。

标签: javajava-8nashorn

解决方案


通过不同用户的提示,尤其是@FedericoklezCulloca,我设法解决了我的问题。我将在下面陈述以下几点:

  1. 仅使用 Java API 中的“公开”接口,避免使用受限接口。
  2. 我必须在 linux 中获得完全相同版本的 JDK(当然是同一供应商)。比它奏效了。

推荐阅读