gpt4 book ai didi

java - 构建和部署 Java Web 项目有什么区别?

转载 作者:搜寻专家 更新时间:2023-11-01 01:46:33 25 4
gpt4 key购买 nike

我知道

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

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

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

(感谢 Ignacio Vazquez-Abrams)。

但是当我想在 Java Web 项目中查看我的更改时,我还必须部署它们(在构建之后)。当我部署我的项目时,Netbeans 会做什么?

最佳答案

您的定义似乎来自本地代码编译器(C、C++、Pascal 等)的世界。在 Java 中,编译只是将 Java 代码(文本)变成 Java 字节码的过程,Java 字节码也是一种高级代码,而不是对象(机器)代码。

每次应用程序在虚拟机内运行时,Java 中的链接都会发生,其中字节码中的符号被解析为对其他已加载字节码的引用。所以java中的顺序实际上是:编译->部署->链接->运行。

一旦运行,JVM可能选择将 Java 字节码转换为机器码直接执行,但它也可以只解释字节码。

在这种情况下,部署只是指告诉应用程序服务器代码在哪里并运行应用程序描述符中定义的启动代码(例如,在 web.xml 中为 webapps 定义的 Servlet 和 Filter 初始化)。

关于java - 构建和部署 Java Web 项目有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8192876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com