正如标题所说,我想在 WSL 上安装 IBM java(来自 IBM's Java SDK downloads)。但是,“不需要 InstallAnywhere root”文件会创建一个文件夹等,但只是执行一个简单的 <path>/java -version
。命令需要几分钟时间。
是否存在导致此问题的固有不兼容性或其他要求?
一些背景信息:
- Windows 10 企业版 1703 64 位
没有安装其他 Java 版本(在 WSL 中)
WSL 报告 (
uname -a
) Linux 计算机名 4.4.0-43-Microsoft #1-Microsoft Wed Dec 31 14:42:53 PST 2014 x86_64 x86_64 x86_64 GNU/Linux报告的 Java 版本(经过漫长的等待)是:
`Java 版本“1.7.0”
Java(TM) SE Runtime Environment (build pxa6470sr10fp15-20171116_01(SR10 FP15))
IBM J9 VM (build 2.6, JRE 1.7.0 Linux amd64-64 Compressed References
20171011_366933 (JIT enabled, AOT enabled)
J9VM - R26_Java726_SR10_20171011_1726_B366933
JIT - r11_20171011_366933
GC - R26_Java726_SR10_20171011_1726_B366933_CMPRSS
J9CL - 20171011_366933)
JCL - 20171109_01 based on Oracle jdk7u161-b13
谢谢!
最佳答案
更新 - 2018 年 1 月
微软对 WSL 中的底层技术和内存管理进行了重大改进,最新版本的 Windows 10 Insiders 与 JVM 配合良好。它不如本地 Linux 机器快,但现在可以在 WSL 环境中工作,而不会因为简单的命令执行而遭受重大延迟。现在答案是肯定的,但您必须拥有 Windows 10 内部版本 17074 或更高版本才能获得不错的性能。
--- 原始答案 - 2017 年 12 月 ---
经过一些研究,我发现答案是肯定的和否定的:
是,因为 JDK 可以在平台上正确安装并按预期运行(速度除外),无需任何特殊修改或配置。
否,因为由于 WSL 的架构,某些内存映射函数在 WSL 中的工作方式与在完全原生的 Linux 环境中不同。用户报告性能非常慢 using Haskell ,看起来 Java 也遇到了同样的问题。自 2017 年夏季以来,Windows 10 版本有了显着改进,但与原生系统相比仍然很慢。
不过,Microsoft 仍在积极解决此问题,此答案中的“否”部分可能会在不久的将来得到解决。
关于java - 是否可以在适用于 Linux (WSL) 的 Windows 子系统 - Ubuntu 上安装 IBM java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47702848/