问题

认为对此的答案非常明显,但在这里:

当我在学校的一个小项目(在java中)Icompileit。

在我的鸡舍我们正在使用ant tobuildour项目。

我认为编译是构建的一个子集。它是否正确?构建和编译有什么区别?

相关:编译和构建有什么区别?

#1 热门回答(171 赞)

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

生成源(有时)。

编译来源。

编译测试源。

执行测试(单元测试,集成测试等)。

包装(装入罐子,战争,ejb-jar,耳朵)。

运行健康检查(如Checkstyle,Findbugs,PMD,测试覆盖等静态分析器)。

生成报告。

正如你所看到的,编译只是构建的一个(小)部分(最佳实践是使用Maven或Ant等工具完全自动化所有步骤并连续运行构建,即Continuous Integration)。

#2 热门回答(32 赞)

我在这里看到的一些答案是超出上下文的,如果这是一个C / C问题则更有意义。

简洁版本:

"编译"正在将.java文件转换为.class文件

"建筑"是一个通用术语,包括编译和其他任务。

"建筑"是ageneric,描述了包括编译在内的整体过程。例如,构建过程可能包括生成Java代码或文档文件的工具。

通常还会有其他阶段,比如"package",它会获取所有.class文件并将它们放入.jar,或"clean"清除.class文件和临时目录。

#3 热门回答(22 赞)

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

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

Building是由编译和链接组成的序列,可能还有其他任务,例如安装程序创建。

java构建编译区别_构建与编译(Java)相关推荐

  1. java comp env 区别_加和不加java:comp/env/前缀有什么区别?

    java:comp/env是标准的J2EE环境查找规则 使用这种方式必须做一次环境名到JNDI名的映射 这种隔离使得在写程序时不必关注真正的JNDI名字 其实说白了跟把JNDI名放到配置文件里是一样的 ...

  2. 八爪鱼 是java做的吗_章鱼扫描仪:Java构建工具和恶意软件

    八爪鱼 是java做的吗 Alvaro Munoz最近在GitHub Security Lab网站上发布了" Octopus扫描程序恶意软件:攻击开源供应链 ". 我发现这篇文章很 ...

  3. classpath*: 和classpath:有什么区别_我们可以从Java“HelloWorld”中学到什么?

    这是每个Java程序员都知道的程序.它很简单,但是简单的开始可以导致对更复杂概念的深入理解.在这篇文章中,我将探讨从这个简单的程序中学到什么. 公共 类 HelloWorld { / ** * @参数 ...

  4. java主线程和子线程区别_主线程异常– Java

    java主线程和子线程区别 Being a Java Programmer, you must have seen exception in thread main sometimes while r ...

  5. java byte 判断相等_你真的了解Java中quot;==quot;和equals()的区别?

    部分面试资料链接:https://pan.baidu.com/s/1qDb2YoCopCHoQXH15jiLhA 密码:jsam 想获得全部面试必看资料,关注公众号,大家可以在公众号后台回复" ...

  6. java跟c 的区别_【c++跟java的区别】java跟c语言的区别

    Java与C/C++作为编程语言的两大巨头,他们有什么区别呢?下面是小编为大家准备的c++跟java的区别,希望大家喜欢! c++的定义 C++是一种面向对象的计算机程序设计语言.C++这个词在中国大 ...

  7. c语言与java的最大区别_【干货!!】来看看java和c语言的一些大体区别

    原标题:[干货!!]来看看java和c语言的一些大体区别 对于这两门计算机语言大多数人接触的都不是很多,一般都是到了大学的时候学计算机专业的一些同学才刚接触到c语言这么课程.刚学习的时候会感到非常的陌 ...

  8. java请求接口示例_用示例解释Java接口

    java请求接口示例 介面 (Interfaces) Interface in Java is a bit like the Class, but with a significant differe ...

  9. java 秒变成时间_使用Quarkus开发Java云原生应用

    Java应用的云原生化痛点 Java技术栈作为企业级开发的利器已经发展了快二十多年,大家基于Java技术栈开发了大量的应用.随着云原生架构的普及,越来越多的用户开始使用容器技术来运行微服务应用程序.借 ...

  10. java 基础 笔试题_非常全面的java基础笔试题

    1.下列说法正确的是() (程序结构) A java程序的main方法必须写在类甩面 B java程序中可以有多个main方法 C.java程序中类名必须与文件名一样 D.JAVA程序的main方法中 ...

最新文章

  1. 你值得拥有!更省钱地完成数据监听
  2. 【java实训课】web网页相关知识点总结
  3. 当电桥为恒流源时惠斯通电桥电压的计算方法
  4. jquery ajax的例子
  5. nginx fastcgi python_Nginx + webpy 和FastCGI搭建webpy环境
  6. oracle之高级子查询2
  7. 飞车手游服务器维护,QQ飞车手游更新出现异常怎么办 更新异常原因及解决方法技巧...
  8. Redis(三)源source编译
  9. 常用类字符串详解大全String
  10. Unity Audio Mixer介绍
  11. 大数据毕业设计题目50例
  12. 计算机操作系统-运行机制、体系结构
  13. Boost编译一步步来
  14. 分析百度手机助手协议(实现app下载量上涨)
  15. 什么是抖音小程序 小程序该怎么做
  16. 虚拟机启动失败:VMware Workstation and Device/Credential Guard are not compatible
  17. 神经网络模型结果怎么看,神经网络模型怎么评估
  18. poj 2942 点双连通分量
  19. redis源代码分析 – event library - Dicky - 开源中国社区
  20. 人工智能时代,最容易被人工智能取代的职位是什么

热门文章

  1. mysql 驱动指令_Mysql的驱动包如何发送指令给MYSQL SERVER
  2. python一维数组排序_【Python】数组排序
  3. linux用Vim上传.sql,真的有(很多)linux大牛用vim写项目吗?
  4. oracle必须配置哪个参数,oracle – 此操作必须将ORA-02069 global_names参数设置为TRUE...
  5. android定位坑简书,android webview 定位问题
  6. mysql grant命令详解_mysql grant命令详解 设置mysql远程连接
  7. linux zk服务 关闭_linux上安装zookeeper 启动和关闭的教程
  8. VS2015sql本地服务器为空,详解VS2015自带LocalDB数据库用法实例
  9. Nginx系列(4):Web服务器分析(理论上)
  10. 业务逻辑配置化的可选技术方案