让Java在Windows 10 Ubuntu上运行

5
我安装了Windows 10周年更新,以便尝试在Windows上使用Ubuntu的Bash。请参见如何安装。我想看看它的性能如何。然后按照这篇文章的说明安装了Oracle Java JDK,以便与本机Windows Java编译器比较编译时间。
然后我尝试运行Maven项目,但失败了。 Maven一直处于启动状态。我在任务管理器中注意到“java”进程的CPU占用率约为92%。
所以我尝试了一些简单的操作。我创建了一个类似于Java Hello-world的虚拟类,并尝试使用javac进行编译。同样,"javac"进程的CPU占用率约为92%。
我认为可能与无头运行有关,但选项-Djava.awt.headless=true并没有改善情况。
有人成功运行过吗?还是有什么尝试的方法?
更新:
我还尝试安装Open JDK而不是Oracle JDK(通过sudo apt-get install openjdk-7-jdk),但结果相同。

1
从安装Bash的链接中可以看到这样一句话:"并非所有命令行应用程序都能正常工作,因为此功能仍处于测试阶段。" 我不知道它在六个月后是否仍然有效,但它可能仍然有一定的真实性。 - Dan W
一些建议:(1)你试过用gdb运行并在它挂起的时候获取回溯吗?(2)如果你传递-J-Xint给javac,让JVM禁用JIT编译器,会有帮助吗? - mihi
我的评论不见了。如果你有任何问题,只需在我的问题或答案下面留言即可。别误会:我之所以在这里发布是因为这是一个快速将消息传达给你的方式 :-) - GhostCat
2个回答

3

我想通了。我不能直接从Oracle下载使用它。相反,我必须按照这个链接进行安装。以下是步骤:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

1
我也曾有过与Windows 10周年更新相同的经历。周年更新后的第一个Fast Track Insider Build以及之后的版本都支持Oracle Java 8安装程序和Open JDK 7安装程序。我刚验证了在Insider Preview Build 14951 161014-1700中,从Ubuntu子系统的bash shell中仍然可以使用java -version命令。我也运行了其他基于JVM的工具,但没有进行广泛的测试。
这里是一个问题链接无法安装Oracle JDK 8 #315,描述了由BashOnWindows项目跟踪的安装和JVM挂起问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接