版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/inforstack/article/details/70216887
用户可以将部署内容(war、ear、jar、sar等)放在standalone/deployments目录内,会自动部署到服务器运行时。这是开发时常采用的方式。
注:特别是正在运行中的产品系统,推荐使用Jboss AS 7的管理API来部署内容,而不是依赖部署扫描子系统来周期性地扫描这个目录。
部署模式
Jboss AS 7中的文件系统部署扫描器不同于以前的版本。扫描器能以两种不同的模式运作,这取决于它是否会直接监控部署的内容,以决定部署(或重新部署)。
1) 自动部署模式
扫描器直接监控部署内容,自动部署新的内容,重新部署时间戳发生变化的内容。这与以前的AS版本行为相似,也有几点不同之处:
? 如以展开的方式部署,其中的任何文件变化都将引起重新部署。因为Jave EE6应用并不需要部署描述
符,所以没有尝试监控部署描述符,仅当部署描述符发生变化时重新部署。
? 扫描器会在这个目录放一个标记文件,表明尝试部署或取消部署的状态。
2) 手动部署模式
扫描器不直接监视部署内容,而是由用户决定是否或何时部署或取消部署。扫描器依赖一个系统标记文件,用户添加或删除标记文件,扫描器将部署、取消部署或重部署内容。
自动和手动部署模式能根据压缩部署和展开部署来独立配置。可通过standalone.xml文件内
deployment-scanner元素的auto-deploy属性来配置,如下:
<deployment-scanner scan-interval="5000" relative-to="jboss.server.base.dir"
path="deployments" auto-deploy-zipped="true" auto-deploy-exploded="false"/>
默认压缩内容用自动部署的方式,展开内容的自动部署是禁用的。强烈推荐展开内容使用手动部署模式,因为展开内容本质上是有缺陷的,扫描器会自动部署部分复制的内容。手动部署模式也允许替换部署资源(如html和css文件)而不会触发重新部署。
标记文件
标记文件与相关的部署内容同名,只是附加了一个后缀名。不同的后缀名表明不同的意义。
.dodeploy 由用户放置,表明内容应被部署或重新部署到运行时
.skipdeploy 只要这个文件存在,禁用自动部署。最有用的地方是允许更新展开内容,扫描器不会在更新中开始重新部署。也能用于压缩内容,尽管扫描器会检测正在进行中的变化,一直等待到修改完成。
.isdeploying 部署扫描服务放置,表明它已经注意到一个. dodeploy文件,正处在部署内容的过程中,当部署完成后,将自动删除这个文件。
.deployed 部署扫描服务放置,表明内容已经被部署到运行时,如果用户删除这个文件将取消部署。 .failed 部署扫描服务放置,表明部署失败,文件内容将包含一些失败原因的信息。自动模式时,删除这个文件,将有资格再次部署。
.isundeploying 部署扫描服务放置,表明它已经注意到一个.deployed文件已经被删除,正在取消部署内容。执行完毕后这个文件会被删除。
.undeployed 部署扫描服务放置,表明内容已从运行时删除。如果用户删除这个文件,在手动模式下不会造成影响,自动模式下会重新部署。
.pending 部署扫描服务放置,表明它已经注意到要部署内容,但尚未通知服务器部署。如果扫描器侦测到一些自动部署内容仍在复制过程中,或者存在一些阻止自动部署的问题,将创建这个文件。只要这个条件成立,扫描器不会通知服务器部署或取消部署任何内容。
示例:
1) 部署压缩内容
将war或ear拷贝到deployments目录即可,默认情况下,不需要添加标记文件,会自动生成。
2) 部署展开内容
将部署内容拷贝到deployments目录下并添加.dodeploy标记文件(如example.war.dodeploy)。
3) 取消部署
删除.deployed标记文件。
本部分内容可参见deployments目录下的README.txt。
注:特别是正在运行中的产品系统,推荐使用Jboss AS 7的管理API来部署内容,而不是依赖部署扫描子系统来周期性地扫描这个目录。
部署模式
Jboss AS 7中的文件系统部署扫描器不同于以前的版本。扫描器能以两种不同的模式运作,这取决于它是否会直接监控部署的内容,以决定部署(或重新部署)。
1) 自动部署模式
扫描器直接监控部署内容,自动部署新的内容,重新部署时间戳发生变化的内容。这与以前的AS版本行为相似,也有几点不同之处:
? 如以展开的方式部署,其中的任何文件变化都将引起重新部署。因为Jave EE6应用并不需要部署描述
符,所以没有尝试监控部署描述符,仅当部署描述符发生变化时重新部署。
? 扫描器会在这个目录放一个标记文件,表明尝试部署或取消部署的状态。
2) 手动部署模式
扫描器不直接监视部署内容,而是由用户决定是否或何时部署或取消部署。扫描器依赖一个系统标记文件,用户添加或删除标记文件,扫描器将部署、取消部署或重部署内容。
自动和手动部署模式能根据压缩部署和展开部署来独立配置。可通过standalone.xml文件内
deployment-scanner元素的auto-deploy属性来配置,如下:
<deployment-scanner scan-interval="5000" relative-to="jboss.server.base.dir"
path="deployments" auto-deploy-zipped="true" auto-deploy-exploded="false"/>
默认压缩内容用自动部署的方式,展开内容的自动部署是禁用的。强烈推荐展开内容使用手动部署模式,因为展开内容本质上是有缺陷的,扫描器会自动部署部分复制的内容。手动部署模式也允许替换部署资源(如html和css文件)而不会触发重新部署。
标记文件
标记文件与相关的部署内容同名,只是附加了一个后缀名。不同的后缀名表明不同的意义。
.dodeploy 由用户放置,表明内容应被部署或重新部署到运行时
.skipdeploy 只要这个文件存在,禁用自动部署。最有用的地方是允许更新展开内容,扫描器不会在更新中开始重新部署。也能用于压缩内容,尽管扫描器会检测正在进行中的变化,一直等待到修改完成。
.isdeploying 部署扫描服务放置,表明它已经注意到一个. dodeploy文件,正处在部署内容的过程中,当部署完成后,将自动删除这个文件。
.deployed 部署扫描服务放置,表明内容已经被部署到运行时,如果用户删除这个文件将取消部署。 .failed 部署扫描服务放置,表明部署失败,文件内容将包含一些失败原因的信息。自动模式时,删除这个文件,将有资格再次部署。
.isundeploying 部署扫描服务放置,表明它已经注意到一个.deployed文件已经被删除,正在取消部署内容。执行完毕后这个文件会被删除。
.undeployed 部署扫描服务放置,表明内容已从运行时删除。如果用户删除这个文件,在手动模式下不会造成影响,自动模式下会重新部署。
.pending 部署扫描服务放置,表明它已经注意到要部署内容,但尚未通知服务器部署。如果扫描器侦测到一些自动部署内容仍在复制过程中,或者存在一些阻止自动部署的问题,将创建这个文件。只要这个条件成立,扫描器不会通知服务器部署或取消部署任何内容。
示例:
1) 部署压缩内容
将war或ear拷贝到deployments目录即可,默认情况下,不需要添加标记文件,会自动生成。
2) 部署展开内容
将部署内容拷贝到deployments目录下并添加.dodeploy标记文件(如example.war.dodeploy)。
3) 取消部署
删除.deployed标记文件。
本部分内容可参见deployments目录下的README.txt。