OVE*_*ONE 18 java jdk openjdk jre
我最近才在wiki页面上发现了不同的 JVM,并认为我会开始修补。但是,很难找到有关如何在 Ubuntu 上配置 Java 的文档。
假设我想更改我正在使用的 JRE 或 JDK,我可以打开一个终端并说
sudo update-alternatives --config java
Run Code Online (Sandbox Code Playgroud)
然后从已安装的版本之一中进行选择。
如果我理解 JVM 是正确的(我很可能不是),您可以将 openJDK 配置为使用替代 JVM(例如 JAMVM)并以此方式运行它
jamvm -jar foo.jar
Run Code Online (Sandbox Code Playgroud)
2个问题,
1:我有 JVM 的概念吗?就像,这可能吗?
2:如果是这样,我如何配置 JVM 并将默认值切换到我选择的 JVM?
OVE*_*ONE 18
随意使用它作为在运行时修补 Java 的参考。
要选择您的 JRE,请使用
sudo update-alternatives --config java
Run Code Online (Sandbox Code Playgroud)
这将提供类似于以下输出的内容。
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
* 1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual mode
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过编号选择来选择所需的 Java 运行时。
Sun/Oracle 有两个 JVM 选择,-server 和 -client。如果您选择 OpenJDK 作为 Java 运行时环境,您还有其他选项。
当您java在没有其他参数的情况下输入终端时,帮助会列出几个可选的 VM。我不确定哪些是 OpenJDK 附带的,但 3 个流行的是 JamVM、Zero 和 Cacao
要使用这些,只需键入
java -jamvm 'your other parameters here'
java -cacao 'your other parameters here'
java -zero 'your other parameters here'
java -server 'your other parameters here
Run Code Online (Sandbox Code Playgroud)
-server VM 通常是默认设置。您也可以指定,-client但在 64 位 IcedTea6 中,它似乎运行与 -server 相同的版本。很可能还有其他选项,但我发现默认选项响应速度最快。
最后,如何设置Java的内存(只是因为)
java -Xmx1024m -Xms128m 'your other parameters here'
Run Code Online (Sandbox Code Playgroud)
这将 Java 程序允许的内存限制为最大 1024 MB,并将其初始内存大小设置为 128 MB。这是定义最低系统要求的好方法。在Java 6的手册页的java命令描述了这些选项等。
就这样。如果有人对 Ubuntu 有额外的 Java 调整,请将它们留在评论中,我会添加它们。