在windows中使用Intellij Idea时选择自定义的64位JVM

本文英文原文自:https://intellij-support.jetbrains.com/entries/23455956-Selecting-the-JDK-version-the-IDE-will-run-under
在java开发过程中,我们一般使用32位的jdk,因为开发过程中需要频繁地重启应用,并且需要占用内存少,所以对于64位的jdk来说就没有多大的必要.但对于在开发中使用的IDE来说,却需要长时间的运行,如果能够优化IDE的运行效率,那么对于编码本身就有很大的帮助,谁也不想在编码中机器响应慢(想一下按个提示键,等半天的情况).这时候,使用64位的server版jvm就很有必要了.即IDE使用64位server版JVM,而开发使用32位jdk.

本文介绍如何在intellij idea中配置64位的jdk,以便让idea启动时使用64位的jdk,而不是默认的32位.主要介绍idea是如何查找jdk,进行配置使用的.

在idea提供的安装包中,绑定了默认的一个jdk版本,一般情况下我们只需要使用这个jdk就行了。只不过这个jdk是32位的,意味着我们只能支持双击idea.exe来启动idea。

如果需要使用64位的idea,那么需要我们自己安装一个64位的jdk,然后idea64.exe按照一定的查找规则来找到64位的jdk,如果没找到,则直接报错。当然,我们也可以通过idea.bat这个脚本来配置相应的信息,来定制这个查找过程。

32位Idea.exe

32位的idea(即使用idea.exe)将会使用以下的搜索顺序
1    环境变量 IDEA_JDK(可以在高级属性的环境变量中配置)
2    使用在安装目录下的jre目录中的jdk,这个是32位的。
3    使用注册表(这个不清楚怎么查找)
4    使用JDK_HOME环境配置变量
5    使用JAVA_HOME环境配置变量(我们一般配置的java环境变量)

64位Idea64.exe

64位的idea(即使用idea64.exe)将会使用以下的搜索顺序
1    环境变量IDEA_JDK_64(这里多了一个_64)
2    使用安装目录下的jre64目录中的jdk,这个默认没有这个目录,我们可以将我们的64位jdk放在这个目录下
3    注册表
4    JDK_HOME环境变量,要求这个环境变量中的jdk必须是64位的,否则不会使用这个jdk
5    JAVA_HOME环境变量,也要求这个变量中的jdk也要是64位的

这个和32位中的主要区别在于IDEA_JDK的配置变量名称不一样,同样基于目录的查找使用的目录名不一样。这样的话,我们就可以即保留32位的配置, 也可以保存64位的配置,使用idea.exe或者idea64.exe时就会直接使用相应配置的信息,而不会覆盖之前的配置或者切换的时候进行修改了, 算是一种方便处理的方法吧。

使用Idea.bat

如果我们使用idea.bat,则会按照以下的搜索顺序
1    IDEA_JDK配置变量(如果这个版本为32位,就会启动32位版本,否则就会启动64位版本)
2    安装目录下的jre目录
3    配置变量JDK_HOME
4    配置变量JAVA_HOME

使用idea.bat的话,就会根据获取到的jdk版本来启动相应版本的idea。其实就是依靠jdk来运行idea(话说idea就是java写的)。不过有点麻烦的就是,这个会产生一个cmd黑框。

备注
以上说到的配置变量必须是JDK安装目录,而不是JRE安装目录。如果我们查看idea自带的jre目录,你会发现这其实也算是一个jdk,只不过idea把相关不需要的信息全都删除了。只留下里面的jre目录和运行时需要的信息。

相应的英文原文如下所示,这里将其copy过来.

JDK is bundled with all the product installers and it's recommended that you will use the provided JDK version unless there are any specific issues.

32-bit JDK is located in IDE_HOME\jre directory and is used by the 32-bit product executable.
To run the IDE in 64-bit mode you will need to download and install 64-bit JDK (not JRE) distribution and install it yourself. IDE will find and use it from the registry when you run the 64-bit .exe file (available only for IntelliJ IDEA right now, other products can use the .bat file to run in 64-bit mode).

<product>.exe uses this JDK search sequence:

  1. IDEA_JDK / WEBIDE_JDK / PYCHARM_JDK / RUBYMINE_JDK environment variable (depends on the product, WEBIDE_JDK applies to both WebStorm and PhpStorm)
  2. ..\jre directory
  3. system Registry
  4. JDK_HOME environment variable
  5. JAVA_HOME environment variable

idea64.exe uses this JDK search sequence:

  1. IDEA_JDK_64 environment variable
  2. ..\jre64 directory
  3. system Registry
  4. JDK_HOME environment variable
  5. JAVA_HOME environment variable

It’s also possible to start the IDE with <product>.bat file located in the bin directory, it uses the following JDK search sequence:

  1. IDEA_JDK / WEBIDE_JDK / PYCHARM_JDK / RUBYMINE_JDK environment variable (depends on the product)
  2. ..\jre directory
  3. JDK_HOME environment variable
  4. JAVA_HOME environment variable

转载请标明出处:i flym
本文地址:https://www.iflym.com/index.php/code/201404190001.html

相关文章:

作者: flym

I am flym,the master of the site:)

发表评论

电子邮件地址不会被公开。 必填项已用*标注