构建与编译(Java)

我认为这个问题的答案是显而易见的,但事情是这样的:

当我在为学校做一个小项目(在爪哇)我 编译它。

在我的鸡舍,我们正在使用蚂蚁的 建造我们的项目。

我认为编译是构建的一个子集。是这样吗?构建和编译的区别是什么?

相关阅读:
编译和构建之间的区别是什么

120110 次浏览

简而言之

编译转换 java 代码(人类 )转换为字节码,因此 虚拟机理解它。

大楼把所有编译好的零件 共同创造(建立)一个 可执行文件。

编译 是将源代码转换为目标代码的过程。

链接 是将目标代码和库组合成一个原始可执行文件的行为。

Build 是由 编译中连接组成的序列,可能还有其他任务,比如创建安装程序。

许多编译器在编译源代码后自动处理 连接步骤。

编译代码和可执行代码的区别是什么?

其实你也在做同样的事情。Ant 是基于 XML 配置文件构建的系统,可以执行与编译软件相关的各种任务。编译 Java 代码只是这些任务之一。还有很多其他的方法,比如复制文件、配置服务器、组装 zip 和 jar 以及编译其他语言,比如 C。

您不需要 Ant 来编译您的软件。你可以像在学校一样手动操作。Ant 的另一个替代品是一个名为 Maven 的产品。Ant 和 Maven 做同样的事情,但是方式完全不同。

查找 蚂蚁玛文了解更多细节。

编译只是将源代码转换为二进制文件,编译是将所需的任何其他文件编译并链接到编译目录中

我在这里看到的一些答案是脱离上下文的,如果这是一个 C/C + + 的问题,就更有意义了。

简而言之:

  • “编译”是将.java 文件转换为.class 文件
  • “构建”是一个通用术语,包括编译和其他任务。

“构建”是一个 一般术语,描述了包括编译在内的 总的来说过程。例如,构建过程可能包括生成 Java 代码或文档文件的工具。

通常会有额外的阶段,如“包”,需要你的所有。类文件,并将它们放入。罐子,或“清洁”,清除。类文件和临时目录。

“构建”是一个过程,涵盖了创建软件“可交付成果”所需的所有步骤。在 Java 世界中,这通常包括:

  1. 生成源(有时)。
  2. 编译源代码。
  3. 编译测试源。
  4. 执行测试(单元测试、集成测试等)。
  5. 包装(到罐子,战争,ejb-jar,耳朵)。
  6. 运行健康检查(像 Checkstyle、 Findbug、 PMD、测试覆盖率等静态分析器)。
  7. 生成报告。

因此,正如您所看到的,编译只是构建的一小部分(最佳实践是使用 Maven 或 Ant 之类的工具完全自动化所有步骤,并连续运行构建,称为 持续集成)。

  • Build 是程序的编译版本。
  • Compile 意思是,将(程序)转换成机器码或可以执行程序的底层形式。

在 Java 中: Build 是一个包含命名阶段序列的生命周期。

例如: maven 它有三个构建生命周期,下面一个是 default构建生命周期。

◾validate - validate the project is correct and all necessary information is available
◾compile - compile the source code of the project
◾test - test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed
◾package - take the compiled code and package it in its distributable format, such as a JAR.
◾integration-test - process and deploy the package if necessary into an environment where integration tests can be run
◾verify - run any checks to verify the package is valid and meets quality criteria
◾install - install the package into the local repository, for use as a dependency in other projects locally
◾deploy - done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects.

在 Eclipse 和 IntelliJ 中,构建过程包括以下步骤: 清洗之前的包裹, 确认, 编译, 测试, 包裹,
整合, 核实, 安装, 部署。