@(目录)

IntelliJ IDEA 编译方式介绍

编译方式介绍

相比较于 Eclipse 的实时自动编译,IntelliJ IDEA 的编译更加手动化,虽然 IntelliJ IDEA 也支持通过设置
开启实时编译,但是不建议,因为太占资源了。IntelliJ IDEA 编译方式除了手工点击编译按钮进行编译之
外,还有就是在容器运行之前配置上一个编译事件,先编译后运行。默认下 IntelliJ IDEA 也都是这样的设
置,所以实际开发中也不用太注意编译这件事。虽然 IntelliJ IDEA 没有实时编译,但是对于代码检查完全是
没有影响。但是多个类之间的关联关系还是要等 Make 或 Rebuild 触发的时候才会做相关检查的。
在 IntelliJ IDEA 里,编译方式一共有三种:
• Compile:对选定的目标(Java 类文件),进行强制性编译,不管目标是否是被修改过。
• Rebuild:对选定的目标(Project),进行强制性编译,不管目标是否是被修改过,由于 Rebuild 的目标
只有 Project,所以 Rebuild 每次花的时间会比较长。
• Make:使用最多的编译操作。对选定的目标(Project 或 Module)进行编译,但只编译有修改过的文
件,没有修改过的文件不会编译,这样平时开发大型项目才不会浪费时间在编译过程中。

编译触发按钮

运行之前的编译

• 如上图所示,IntelliJ IDEA 默认在运行 tomcat 之前会先进行 编译 操作。

• 上图标注 1 所示,IntelliJ IDEA 是支持自动编译的,默认是不开启的,也建议不用开启。
• 上图标注 2 所示,设置编译 heap 大小,默认是 700 ,建议使用 64 位的用户,在内存足够的情况
下,建议改为 1500 或以上。如果在编译的时候出错,报: OutOfMemoryError ,一般也是要来改这个地
方。
• 上图标注 3 所示,还可以设置编译时的 VM 参数,这个你可以根据需求进行设置,一般是用不上的。

• 如上图 所示,可以添加目录 或 文件进行编译排除。
• 在项目中,如果有任何一个可编译的文件无法编译通过,则 IntelliJ IDEA 是无法运行起来的,必须等你
全部问题解决,编译通过之后才可运行。但是可能开发过程中,某一个包目录的文件编译无法通过,但是我
们又不急着改,那我们就可以考虑把该包加入到排除编译列表中,则项目就可以运行起来。

• 如上图 所示,IntelliJ IDEA 支持常见的几种编译器: Javac 、 Eclipse 、 Ajc 等。默认是 J
avac ,也推荐使用 Javac 。
• Project bytecode version 针对项目字节码编译版本,一般选择的是当前项目主 JDK 的版本。
• Per-module bytecode version 可以针对 Project 下各个 Module 的特殊需求单独设置不同的 bytecod
e version ,前提是电脑上必须有安装对应的 JDK 版本。

Intellij-编译的更多相关文章

  1. Intellij编译时报“java: System Java Compiler was not found in classpath” 解决办法

    Intellij编译时报“java: System Java Compiler was not found in classpath” 解决方法: Project Settings > Comp ...

  2. intellij 编译 springmvc+hibernate+spring+maven 找不到hbm.xml映射文件

    1. 错误信息 Invocation of init method failed; nested exception is org.hibernate.MappingNotFoundException ...

  3. [Intellij] 编译报错 javacTask

    报错信息: Idea 编译报错 javacTask: 源发行版 1.6 需要目标发行版 1.6 解决方案:

  4. Intellij编译时报“java: System Java Compiler was not found in classpath”

    问题如下: http://stackoverflow.com/questions/19889145/setting-up-intellij-12-idea-with-java-1-7-and-reso ...

  5. Intellij如何设置编译后自动重新加载class文件?

    前段时间突然发现Intellij不能自动重新加载类了,每次编译后都要重新启动项目,才能显示更新效果,后来网上查询Intellij下如何配置热部署,都说是要配置构件,然后在web容器的编辑页面选择upd ...

  6. 使用IntelliJ IDEA 编译开源的机器学习源码--Oryx

    What is Oryx? 大名鼎鼎的Sean Owen (http://www.linkedin.com/in/srowen) 正在 Cloudera 作为 Director of Data Sci ...

  7. scala + intellij idea 环境搭建及编译、打包

    大数据生态圈中风头正旺的Spark项目完全是采用Scala语言开发的,不懂Scala的话,基本上就没法玩下去了.Scala与Java编译后的class均可以运行于JVM之上,就好象.NET中F#与C# ...

  8. 使用 IntelliJ IDEA 导入 Spark源码及编译 Spark 源代码

    1. 准备工作 首先你的系统中需要安装了 JDK 1.6+,并且安装了 Scala.之后下载最新版的 IntelliJ IDEA 后,首先安装(第一次打开会推荐你安装)Scala 插件,相关方法就不多 ...

  9. IntelliJ IDEA 编译方式介绍

    编译方式介绍 相比较于 Eclipse 的实时自动编译,IntelliJ IDEA 的编译更加手动化,虽然 IntelliJ IDEA 也支持通过设置开启实时编译,但是不建议,因为太占资源了.Inte ...

  10. 使用 IntelliJ IDEA 导入 Spark 最新源码及编译 Spark 源代码

    前言   其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. 准备工作 1.sca ...

随机推荐

  1. Hibernate初探之单表映射——Hibernate概念及插件的安装

    什么是ORM ORM(Object/Relationship Mapping):对象/关系映射 为什么要有ORM? 利用面向对象思想编写的数据库应用程序最终都是把对象信息保存在关系型数据库中,于是要编 ...

  2. html 实现动态在线预览word、excel、pdf等文件(方便快捷)

    https://blog.csdn.net/superKM/article/details/81013304 太方便了 <iframe src='https://view.officeapps. ...

  3. MyBatsi学习

    深入浅出Mybatis系列(一)---Mybatis入门 深入浅出Mybatis系列(二)---配置简介(mybatis源码篇) 深入浅出Mybatis系列(三)---配置详解之properties与 ...

  4. JS正则表达式完整教程

    JS正则表达式完整教程(略长) 引言 亲爱的读者朋友,如果你点开了这篇文章,说明你对正则很感兴趣. 想必你也了解正则的重要性,在我看来正则表达式是衡量程序员水平的一个侧面标准. 关于正则表达式的教程, ...

  5. redis 发展史 应用场景

    引言 在Web应用发展的初期,那时关系型数据库受到了较为广泛的关注和应用, 原因是因为那时候Web站点基本上访问和并发不高.交互也较少. 而在后来,随着访问量的提升,使用关系型数据库的Web站点多多少 ...

  6. 44、[源码]-Spring容器创建-BeanFactory预准备

    44.[源码]-Spring容器创建-BeanFactory预准备 @Override public void refresh() throws BeansException, IllegalStat ...

  7. firewall 相关命令

    1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disabl ...

  8. 011_GoldWave软件安装及使用

    (一)软件安装包: 链接:https://pan.baidu.com/s/15c5veooyA8bAYIAgLFOLjg提取码:jiis 复制这段内容后打开百度网盘手机App,操作更方便哦 (二)降低 ...

  9. ckeditor粘贴word

    ); Server.setTimeout(_this.config.timeout, function(cli){ cli.end('timeout\n'); }); console.log('Ser ...

  10. 块状链表 bzoj 3343教主的魔法

    //块状链表//分块排序,然后每次查找时在暴力查找头和尾两个块.//中间那些块,因为有序所以只需2分查找即可.我用的是lower_pound();//插入是,也是头和尾暴力插入,中间那些加到一个累计里 ...