zoukankan      html  css  js  c++  java
  • 关于Intellij IDEA菜单项中Compile、Make和Build的区别

    前两天试了试NetBeans,在编辑方面感觉还是不太满意,于是又换了大牛同事口中的“神器”——Intellij IDEA来试试手,果然,在做了一番“调戏”之后,“神器”确实是很不错的,尤其是在装上其插件IdeaVim之后,用起来既能做到像Vim一样高效编辑,又能结合“神器”那超神的智能提示,真的是爽极了。

    但“神器”菜单项上的三个选项却让我有些困惑:Complie、Make、Build,对我来说,感觉这三个应该是一样的啊?而且实际用起来也确实感觉不出来这三者的差别。于是Google一番,有如下文章:

    ============本文转自http://lavasoft.blog.51cto.com/62575/436216,在此感谢原作者的成果===============

    Compile、Make和Build的区别
     
    针对Java的开发工具,一般都有Compile、Make和Build三个菜单项,完成的功能的都差不多,但是又有区别。
     
    编译,是将源代码转换为可执行代码的过程。编译需要指定源文件和编译输出的文件路径(输出目录)。Java的编译会将java编译为class 文件,将非java的文件(一般成为资源文件、比如图片、xml、txt、poperties等文件)原封不动的复制到编译输出目录,并保持源文件夹的目 录层次关系。
     
    在Java的集成开发环境中,比如Eclipse、IDEA中,有常常有三种与编译相关的选项Compile、Make、Build三个选项。这三个选项最基本的功能都是完成编译过程。但又有很大的区别,区别如下:
    1、Compile:只编译选定的目标,不管之前是否已经编译过。
     
    2、Make:编译选定的目标,但是Make只编译上次编译变化过的文件,减少重复劳动,节省时间。(具体怎么检查未变化,这个就不用考虑了,IDE自己内部会搞定这些的)
     
    3、Build:是对整个工程进行彻底的重新编译,而不管是否已经编译过。Build过程往往会生成发布包,这个具体要看对IDE的配置 了,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。Build因为要全部编译,还要执行打包等额外工 作,因此时间较长。

    ================================================================================

    这篇文章说得比较清楚,因此,如果平时只修改了少数几个文件的话,应使用make命令,这样可以节省编译的时间。不然编译整个工程是非常耗时间的。

  • 相关阅读:
    转:[Silverlight入门系列]使用MVVM模式(9): 想在ViewModel中控制TreeView节点展开?
    C#线程同步方法——Monitor
    转:Mongodb源码分析之Replication模式
    转:Mysql使用主从复制机制(replication)
    Ruby IDE
    转:ASP.NET MVC4细嚼慢咽---(5)js css文件合并
    转:ASP.NET MVC4细嚼慢咽---(6)全局过滤器
    转:WCF服务开发与调用的完整示例
    转:WF工作流技术内幕 —— 通过Web服务调用Workflow工作流(开发持久化工作流)
    汇总高效的卷积神经网络结构[转载]
  • 原文地址:https://www.cnblogs.com/ini_always/p/2221985.html
Copyright © 2011-2022 走看看