java - 显然 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原则,这对我来说似乎很混乱。
解决方案
通过不同用户的提示,尤其是@FedericoklezCulloca,我设法解决了我的问题。我将在下面陈述以下几点:
- 仅使用 Java API 中的“公开”接口,避免使用受限接口。
- 我必须在 linux 中获得完全相同版本的 JDK(当然是同一供应商)。比它奏效了。
推荐阅读
- python-3.x - 如何在 Parallel-SSH 或 Paramiko 中手动输入凭据
- git - 自动合并许多分支,将元素添加到同一个列表
- c# - 在 c# 中使用 web Api 上传文件
- visual-studio - 运行 VS 生成的 dockerfile 时,Rider 中的 Docker COPY 失败
- cassandra - 哪个更好> 触发器或 TTL
- c# - 如何修复 DoubleAnimation 以旋转图像?
- r - 在日期的 data.frame 中查找每个单元格的小时数
- azure-functions - 为什么我没有从 Azure Monitor 检索所有服务总线指标?
- ios - 无法安装 .ipa
- symfony - 401 Unauthorized : /login_check 上的凭据错误