转自:https://www.aliyun.com/jiaocheng/290360.html

有些时候我们的项目中有些错误,但这些错误并不影响项目的整体运行(或许是没有使用到),默认情况下idea是无法通过编译的,因此也就无法部署运行,要达到正确运行项目的目的需要作一些设置才行。

设置Intellij IDEA忽略部分类编译错误

设置很简单,只需要两步即可。

1、设置Java编译器

如上图所示,Ctrl+Alt+S快捷键打开“Settings”对话框,找到设置中的“Java Compiler”设置,将“User compiler”设置由“Javac”改为“Eclipse”;然后在下面的“Eclipse Options”中将“Proceed on errors”选项勾选上。

2、设置Run/Debug Configurations

接下来打开“Run/Debug Configurations”对话框,定位到你的项目启动配置(我这里是Web项目,Web Server为Tomcat7),将“Before launch”设置为“Make,no error check”(默认应该是Make),应用即可。

如下图所示:

通过上面两步设置,虽然在编译过程仍然有错误输出,但idea已经可以忽略掉编译过程的错误了。


下面是翻译过来的一篇博客,如果英文较好,请阅读原文。

原标题:Why you should use the Eclipse compiler in Intellij IDEA


为什么要在Intellij IDEA中使用Eclipse编译器

如果你使用Intellij Idea,你应该考虑使用Eclipse编译器来代替Javac。

你的项目所使用的编译器可在IDE的设置页面更改。

需要注意,如果你使用的是Java8,只有Intellij 14及更高版本才会有可供选择的Eclipse编译器选项。

与Javac不同的是,Eclipse编译器被设计为IDE内部优先使用的编译器,因此提供了一些特性,使它更适合开发使用:

1、Proceed on errors

项目源代码的某一部分包含编译时错误是完全有可能的,然而这时你需要快速作一些测试来检测你的另一部分代码是否工作正常。

如果使用Javac编译器,你除了在执行之前修复所有错误之外没有其它的选择。然而Eclipse编译器却可以不管这些允许你执行,其目的在于总是生成一个可运行的二进制文件;如果你的代码触及到编译时错误,Eclipse编译器会招聘一个运行时异常。

想要启用这个特性,你需要:

1、在编译器设置页面选中”Proceed on errors“

2、在运行配置中用“Make, no error check”替换“Make”

2、增量编译

Eclipse编译器设计为运行于IDE后台,因此原生支持增量编译。这就意味着它可以只编译自上次编译以来有改动的代码块,因此编译比较快速。

3、并行编译

不像Javac编译器,Eclipse编译器可以利用CPU多核加快编译速度。

结论

显而易见,在IDE内部没有什么理由再继续使用Javac编译器,希望Jetbrains公司会在未来版本的Intellij IDEA将Eclipse编译作为默认的编译器。

35.Intellij IDEA设置忽略部分类编译错误的更多相关文章

  1. Intellij IDEA设置忽略部分类编译错误

    有些时候我们的项目中有些错误,但这些错误并不影响项目的整体运行(或许是没有使用到),默认情况下idea是无法通过编译的,因此也就无法部署运行,要达到正确运行项目的目的需要作一些设置才行. 设置Inte ...

  2. IntelliJ IDEA 设置忽略SVN文件和文件夹

       IntelliJ IDEA 在提交文件至SVN时,可以设置忽略某些文件和文件夹,以免误提交不需要提交的文件.最后,插个题外话,介绍一下如何设置代码默认折叠或者展开.下面使用IntelliJ ID ...

  3. IntelliJ IDEA 左侧列表设置忽略文件格式

    什么问题 idea 中设置忽略文件 Unity开发过程中使用Lua做逻辑开发 Unity会自动生成xx.meta文件 这种文件再使用Idea开发过程中没有用处 显示文件列表中会看着比较乱 如何设置 F ...

  4. IntelliJ IDEA设置JVM运行参数

    2015十一月 28 原 IntelliJ IDEA设置JVM运行参数 分类:JavaSE (11566) (1) 打开 IDEA 安装目录,看到有一个 bin 目录,其中有两个 vmoptions ...

  5. 【C#小知识】C#中一些易混淆概念总结(二)--------构造函数,this关键字,部分类,枚举 分类: C# 2014-02-03 01:24 1576人阅读 评论(0) 收藏

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 继上篇对一些C#概念问题进行细节的剖析以后,收获颇多.以前,读书的时候,一句话一掠而 ...

  6. SVN Git 设置忽略目录 大全

    eclipse中SVN设置 用svn控制版本,svn本身是不会识别哪些该传,哪些不该传,这就导致有些关于路径的东西(比如拓展jar的路径)也被上传了,而当别人下载后,那个路径对于这个人可能完全不存在, ...

  7. ASP.NET中Partial Class部分类

    原文:ASP.NET中Partial Class部分类 如果您在开发项目的公用函数库,用于公用函数库的内容越丰富越好,但这不可能一下子就写好,需要一点一点的积累,这时就可以使用Partial Clas ...

  8. IntelliJ Idea设置默认换行符

    IntelliJ换行CRLF, LF, CR的解释和默认设置 在window下开发有一个大坑,就是换行默认是CRLF,也就是回车换行,但是Linux下只有换行LF,这样代码提交后,会出现编译问题,所以 ...

  9. C#核心基础--静态类&部分类

    静态类 用 static 关键字修饰的类叫做静态类,静态类通常用来定义工具类.静态类不能实例化,不能从指定基类继承而来,静态类隐式从 Object 类继承而来.静态类只能包含静态成员和常量,因为常量是 ...

随机推荐

  1. HDU 4309 Seikimatsu Occult Tonneru

    Seikimatsu Occult Tonneru Time Limit: 6000ms Memory Limit: 32768KB This problem will be judged on HD ...

  2. generate the call load file

    #!/usr/bin/perl -w $e911_call_percent = 0.0; $ims_node_number = 12; $local_ip = "10.86.52.2&quo ...

  3. java-proxool 异常

    使用 proxool,JDBC连接池,进行批量运行的时候遇到异常: The Thread responsible was named 'Thread-32′, but the last SQL it ...

  4. Please ensure that adb is correctly located at 'D:\Android\android-sdk\platform-tools\adb.exe' and

    1.启动任务管理器 2.找到百度安全组件杀掉进程. 3.一般都是组件给禁止了.

  5. 在VPS上用Outline Manager 建立*** 增强版服务器

    在VPS上用Outline Manager 建立*** 增强版服务器 原文 https://free.com.tw/google-outline/ Outline 是Google Jigsaw的一款开 ...

  6. SQL Source Control

    https://documentation.red-gate.com/display/SOC5/SQL+Source+Control+5+documentation Working with migr ...

  7. SQL大小写金额转换

    --功能: 用于将小写的数值翻译成大写的字符串(支持到分,即小数点后两位) --入口参数:@decNum------数字型变量 --返回:字符串 --举例:select dbo.fn_ChnMoney ...

  8. BZOJ 1579 道路升级 Dijkstra

    思路: 这道题 不能把所有边都建出来 会MLE的!!! oh gosh 其实不建所有的边 用的时候再调就行了-.(也没啥区别) //By SiriusRen #include <queue> ...

  9. Vim插件使用技巧(转)

    在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件.在这里详细总结一下这个插件在日常编程中的一些常用小技巧.供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考.当然 ...

  10. Webhook

    Webhook就是用户通过自定义回调函数的方式来改变Web应用的一种行为,这些回调函数可以由不是该Web应用官方的第三方用户或者开发人员来维护,修改.通过Webhook,你可以自定义一些行为通知到指定 ...