java - 是否可以在适用于 Linux (WSL) 的 Windows 子系统 - Ubuntu 上安装 IBM java?

标签 java linux windows-10 windows-subsystem-for-linux

正如标题所说,我想在 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/

相关文章:

java - Appium - 通过 Xpath 查找元素

java - 将 Spring Security 移至 Java Config,authentication-success-handler-ref 去哪儿了?

linux - 为什么取消共享(CLONE_NEWNET)需要 CAP_SYS_ADMIN?

css - 在 Windows 10 Edge 或 IE 中打开时 Bootstrap 背景颜色消失

java - ClassNotFoundException 仅依赖于 JDK7 更新版本?

java - 如何创建虚拟磁盘空间以避免节省硬盘空间?

c++ - Socket select() 在 Windows 下有效,在 Linux 下超时

c++ - 指向函数模板实例的指针

windows-10 - 如何在单语言版本上更改 Windows 10 界面语言

windows - 如何运行带有详细输出的 PowerShell 脚本?