Liferay的热部署与自动部署

2024-03-11 12:18
文章标签 部署 自动 liferay

本文主要是介绍Liferay的热部署与自动部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

为了将Portlet应用部署到应用服务器,Liferay Portal提供了热部署(hot deploy)与自动部署(auto deploy)。热部署与自动部署,通常二者是紧密联系的,但是又各有侧重。


1.Liferay的热部署
Liferay的热部署依赖于应用服务器的热部署实现机制。
实质上,是将Liferay的热部署目录中的Portlet应用部署到应用服务器的部署目录。

不过,Liferay的热部署在JBoss/WildFly的域模式下有缺陷,需要注意采取其他措施。


Liferay的热部署的配置参数通常位于portal-impl.jar/portal.properties文件中,具体如下:
hot.deploy.dependency.management.enabled=true
hot.deploy.listeners=...

hot.undeploy.enabled=true
hot.undeploy.interval=0
hot.undeploy.on.redeploy=false


Liferay的热部署的配置参数通常无需修改,确实要修改则在ROOT.war/WEB-INF/classes/portal-ext.properties文件中进行修改。


2.Liferay的自动部署

Liferay的自动部署依赖于Liferay的热部署,是在Liferay的热部署之前进行一些额外的注入。

Liferay的自动部署过程(注入Liferay必需的jar文件和xml文件到war):
注入必需的util-java.jar, util-taglib.jar
注入liferay-plugins.properties中声明的jars
注入必需的标签库liferay-theme.tld
注入应用服务器需要的部署描述符文件
注入Liferay需要的部署描述符文件,如liferay-portlet.xml


Liferay的自动部署配置参数:
auto.deploy.listeners=...
auto.deploy.enabled=true
auto.deploy.deploy.dir=${liferay.home}/deploy
auto.deploy.interval=3000
auto.deploy.unpack.war=true
auto.deploy.copy.commons.logging=true
auto.deploy.copy.log4j=true

auto.deploy.dest.dir=...
auto.deploy.default.dest.dir=../webapps
auto.deploy.jboss.dest.dir=${jboss.home.dir}/standalone/deployments
auto.deploy.jboss.dest.dir[5]=${jboss.server.home.dir}/deploy

Liferay的自动部署的配置参数通常无需修改,确实要修改则在ROOT.war/WEB-INF/classes/portal-ext.properties文件中进行修改。


3.Liferay的portal属性配置文件加载的顺序:
portal.properties
portal-bundle.properties
portal-ext.properties
portal-setup-wizard.properties
默认的portal实例liferay.com的配置文件portal-liferay.com.properties
其他external-properties,如java ... -Dexternal-properties=portal-legacy-5.1.properties

其中:

portal.properties是Liferay Portal实现类库portal-impl.jar中提供的默认配置文件,通常无需修改,其中的一个配置参数给出了Liferay Portal的默认热部署目录如下:

auto.deploy.deploy.dir=${liferay.home}/deploy

portal-setup-wizard.properties是用户初始化Liferay Portal,设置管理员用户之后在应用服务器的根目录生成的配置文件,其中最重要的配置参数如下:

liferay.home=...


4.Liferay Portal中Portlet应用的部署

1) 手工部署,将.war文件复制到Liferay的热部署目录,然后借助Liferay热部署
Liferay的热部署目录与Liferay的主目录有关。
对于Liferay Bundle发布,Liferay的热部署目录默认就是$liferay.home/deploy目录。
对于Liferay war发布,Liferay的热部署目录默认为与应用服务器同级的deploy目录。


2) 在管理员的Control Panel中,通过Install上传war文件
事实上,被上传的war文件,首先被放置到Liferay的热部署目录,然后再借助Liferay热部署


参考文献:

https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/deploying-your-plugins-hot-deploy-vs-auto-deploy


这篇关于Liferay的热部署与自动部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/797785

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

基于Redis自动过期的流处理暂停机制

《基于Redis自动过期的流处理暂停机制》基于Redis自动过期的流处理暂停机制是一种高效、可靠且易于实现的解决方案,防止延时过大的数据影响实时处理自动恢复处理,以避免积压的数据影响实时性,下面就来详... 目录核心思路代码实现1. 初始化Redis连接和键前缀2. 接收数据时检查暂停状态3. 检测到延时过

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

SpringBoot实现RSA+AES自动接口解密的实战指南

《SpringBoot实现RSA+AES自动接口解密的实战指南》在当今数据泄露频发的网络环境中,接口安全已成为开发者不可忽视的核心议题,RSA+AES混合加密方案因其安全性高、性能优越而被广泛采用,本... 目录一、项目依赖与环境准备1.1 Maven依赖配置1.2 密钥生成与配置二、加密工具类实现2.1

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录