【转】在windows中使用Intellij Idea时选择自定义的64位JVM
原文地址:https://www.iflym.com/index.php/code/201404190001.html
本文英文原文自: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:
- IDEA_JDK / WEBIDE_JDK / PYCHARM_JDK / RUBYMINE_JDK environment variable (depends on the product, WEBIDE_JDK applies to both WebStorm and PhpStorm)
- ..\jre directory
- system Registry
- JDK_HOME environment variable
- JAVA_HOME environment variable
idea64.exe uses this JDK search sequence:
- IDEA_JDK_64 environment variable
- ..\jre64 directory
- system Registry
- JDK_HOME environment variable
- 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:
- IDEA_JDK / WEBIDE_JDK / PYCHARM_JDK / RUBYMINE_JDK environment variable (depends on the product)
- ..\jre directory
- JDK_HOME environment variable
- JAVA_HOME environment variable
【转】在windows中使用Intellij Idea时选择自定义的64位JVM的更多相关文章
- Idea 配置启动JDK___在windows中使用Intellij Idea时选择自定义的64位JVM
略过下面的叙述快速配置 配置你的Idea启动jdk (Idea15之后的版本启动不要JDK1.8) 添加环境变量IDEA_JDK_64,配置和JAVA_HOME环境变量相同,路径写到1.8的jdk就 ...
- [转]Windows10中Virtualbox没办法选择和安装64位的Linux系统
本文转自:https://blog.csdn.net/strivenoend/article/details/78290325 明明在公司的WIN7系统中使用Virtualbox就可以安装64位的Ub ...
- Windows 7 Ultimate(旗舰版)SP1 32/64位官方原版下载(2011年5月12日更新版)
MSDN于2011年5月12日,最新发布简体中文Windows 7 Ultimate 旗舰版 SP1 DVD镜像安装包,分32位和64位两个版本.最新发行代号分别是:677486(32位),67740 ...
- [转] 关于VS中区分debug与release,32位与64位编译的宏定义
在vs编程中,常常涉及到32位和64位程序的编译,怎么判断当前编译是32位编译还是64位编译?如何判断是debug下编译还是release下编译?因为之前用到,这里记录一下,省的忘了又要疯狂的goog ...
- (转载)Windows 7 Ultimate(旗舰版)SP1 32/64位官方原版下载(2011年5月12日更新版)
MSDN于2011年5月12日,最新发布简体中文Windows 7 Ultimate 旗舰版 SP1 DVD镜像安装包,分32位和64位两个版本.最新发行代号分别是:677486(32位),67740 ...
- Windows 7 Ultimate(旗舰版)SP1 32/64位官方原版下载地址
MSDN于2011年5月12日,最新发布简体中文Windows 7 Ultimate 旗舰版 SP1 DVD镜像安装包,分32位和64位两个版本.最新发行代号分别是:677486(32位),67740 ...
- 在Visual Studio项目中根据系统平台自动引用32或64位的DLL
最近在使用Noesis.Javascript.dll,但是这个DLL是有X86与X64二种版本的,我自己的电脑是64位的,但是别人的电脑是32位的.所以在别人那里使用的时候出了问题. 在VS里怎么引用 ...
- Windows 10安装IntelliJ IDEA时快捷键冲突设置
Windows的快捷键的非常多,而且个性化软件获得这些权限的也很多,所以没有最终的方法,只能不断的发现和尝试. 下面是收集的一些教程,或许能在这里找到灵感: 切记:不建议优先修改IDEA的快捷键,应该 ...
- Delphi - 让Delphi10.2在Windows下开发的图形界面程序运行在64位Linux中!
FmxLinux官网:https://fmxlinux.com/ 参考: http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Linux_Applica ...
随机推荐
- Oracle-归档日志详解(运行模式、分类)
一.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo log 重做日志(记录数据库的更改 ...
- Android应用安全之WEB接口安全
Android应用安全不仅包括客户端的安全,也包括web接口的安全.移动App中的Web接口安全主要分为以下几块: 1.SQL注入漏洞 这是一个不能再常见的漏洞类型了,由于App的特性,开发人员认为使 ...
- Android应用安全之数据传输安全
Android软件通常使用WIFI网络与服务器进行通信.WiFi并非总是可靠的,例如,开放式网络或弱加密网络中,接入者可以监听网络流量:攻击者可能 自己设置WIFI网络钓鱼.此外,在获得root权限后 ...
- 2017-2018-2 20155203《网络对抗技术》 Exp7:网络欺诈防范
1.基础问题回答 (1)通常在什么场景下容易受到DNS spoof攻击 连接无线网络,和恶意攻击者处在同一局域网下. (2)在日常生活工作中如何防范以上两攻击方法 首先决不去点击浏览器都认为不安全的网 ...
- 20155210 EXP6 信息搜集与漏洞扫描
20155210 EXP6 信息搜集与漏洞扫描 信息搜集 外围信息搜集 通过DNS和IP挖掘目标网站的信息 whois 域名注册信息查询 我们通过输入whois qq.com可查询到3R注册信息,包括 ...
- python 带参数的多重继承
1. 不带参数的多重继承 # 作者:hhh5460 # 时间:2017.07.18 class A(object): def show_x(self): print('A') class B(obje ...
- LSTM生成尼采风格文章
LSTM生成文本 github地址 使用循环神经网络生成序列文本数据.循环神经网络可以用来生成音乐.图像作品.语音.对话系统对话等等. 如何生成序列数据? 深度学习中最常见的方法是训练一个网络模型(R ...
- 一个可以代替冗长switch-case的消息分发小框架
在项目中,我需要维护一个应用层的字节流协议.这个协议的每条报文都是一个字节数组,数组的头两个字节表示消息的传送方向,第三.四个字节表示消息ID,也就是消息种类,再往后是消息内容.时间戳.校验码等……整 ...
- vue JointJS 实例demo
前言 越来越发现,前端深入好难哦!虐成渣渣了. 需求:前端绘制灵活的关系图(此demo还是简单的,我的需求才跨出一小步) 安装 npm install jointjs 容器,工具栏 <templ ...
- NodeJs学习一NodeJs初识
一.前言 按照惯例,先扯淡,就因为这货,现在才有了各大公司招聘的全栈工程师,正是因为它,让以前只会写前端的人也能写起后端服务器代码来了.所以呢,你招一个会NodeJs的前端,它都能把后端干了,一个人干 ...