我们如何定义术语“部署包”?
说部署包意味着制作程序是正确的 我们在其中创建,放入文件系统位置并使其可见 编译器一个具有-classpath CLASSPATH等选项的VM?
答案 0 :(得分:2)
我们如何定义术语“部署包”?
这取决于您所谈论的那种软件包以及您正在谈论的部署类型。
例如,您可能不会谈论部署Java包,因为Java包通常不是一个合理的“部署单元”。 (通常,您将部署Java应用程序或Web应用程序,或者可能部署Java库。在Maven的上下文中,您将部署“工件”。)
如果您不是在谈论Java包,那么您正在谈论 的那种包?
正确地说,部署一个包意味着创建一个我们创建的过程,放入一个文件系统位置并让它们对编译器可见一个带有-classpath CLASSPATH等选项的VM
这对我来说听起来不像传统的部署定义。首先,没有要部署(例如)JAR文件的标准文件系统位置。
答案 1 :(得分:1)
我已经习惯了maven使用部署这个词的方式。
我并不是说你的定义不正确,它与我的解释没有押韵。
答案 2 :(得分:1)
我将“build”与“deploy”分开。构建将获取源代码并构造可部署的人工制品。在这种情况下,我们有一些.java文件,我们将它们编译为.class文件,并且(通常)将它们放在JAR中。 JAR是我们部署的东西。在Java EE中,我们可以更进一步,将几个JAR(和WAR ...)放入EAR并进行部署。
因此,部署使可部署的artefact可在运行时环境中执行,在这种情况下,使JAR对选定的JVM可见。很可能你可能有很多运行时环境,很多客户,很多机器。你构建一次,多次部署。
在实践中,我们经常发现进行部署不仅仅是将JAR放到Classpath上。您经常发现需要:
在非平凡的情况下,使用脚本自动执行这些步骤通常非常有用。