具有多个服务器实例的Liferay
我同时处理多个Liferay项目(不同的门户、插件、用户和用户组等),经常需要在它们之间切换。这个开关需要很多步骤,比如具有多个服务器实例的Liferay,liferay,liferay-6,liferay-ide,Liferay,Liferay 6,Liferay Ide,我同时处理多个Liferay项目(不同的门户、插件、用户和用户组等),经常需要在它们之间切换。这个开关需要很多步骤,比如 编辑portal-ext.properties(更改Liferay数据库,编辑某些自定义项目特定属性),并编辑“门户设置向导.属性” 从Eclipse服务器实例添加/删除portlet主题和挂钩,有时清理Tomcat的“数据”“Webapps”和“工作”文件夹 转到Liferay的控制面板/服务器/插件安装并重新索引Portlet,如“用户和组织”或“文档和媒体” 因此,
- 编辑portal-ext.properties(更改Liferay数据库,编辑某些自定义项目特定属性),并编辑“门户设置向导.属性”
- 从Eclipse服务器实例添加/删除portlet主题和挂钩,有时清理Tomcat的“数据”“Webapps”和“工作”文件夹
- 转到Liferay的控制面板/服务器/插件安装并重新索引Portlet,如“用户和组织”或“文档和媒体”
app.server.portal.dir
app.server.lib.global.dir
app.server.deploy.dir
app.server.type
app.server.dir
所以,我的问题是,我应该如何处理多个Liferay项目
如果我们开始在公司中从事新的Liferay项目,我们将设置:
- 一个新的数据库模式
- 新的、干净的Liferay服务器与该架构连接,并且
- 全新的Eclipse工作区,具有
- 干净的SDK项目
在我看来,这是大多数开发团队的方法。就我个人而言,我用自己的源、tomcat、数据库等建立每个项目,即使这意味着重复。如今,存储成本很低,这使之成为可能。当然,你的同龄人可能非常多,但我想我会与你分享我的设置 我有一个包含所有项目的项目目录,如下所示:
/projects
/foo-project
/bar-project
/my-project
在我的一个项目中
/my-project
/tomcat
/bin
/conf
...
/src
/portal
... my portal source ...
/plugins
... my plugin source ...
/portal-ext.properties
- 然后,我将tomcat设置为使用不同的端口(8080、8081、8082等),这样,如果必须或想要,我就可以让它们全部运行
- 我将Liferay设置为对每个Liferay实例使用不同的数据库
- 我将
作为tomcat目录的同级,Liferay将读取该文件(假设默认行为)。这提供了快速和简单的编辑,以及弄清楚如何设置每个项目portal-ext.properties
如果您能负担得起空间(不多),这是我作为Liferay开发人员找到的最快的方法。最简单的解决方案是: 创建3个不同的用户,Liferay SDK的
捆绑包。每个用户的属性都是独立的。因此,假设您想使用相同的sdk运行3台服务器。创建3个文件,如
bundle.user1.properties
bundle.user2.properties
bundle.user3.properties
现在,当您想要为服务器1部署一些东西时,请使用user1登录服务器并尝试部署portlet,这将读取bundle.user1.properties,并将portlet/hook部署到指定位置
希望这将解决您的部署问题
此外,当您有3个用户时,您可以在不同的用户帐户中同时运行3个不同的服务器,这样,它们将是安全的,除了管理员之外,没有人可以关闭相同的服务器
希望这有帮助 为什么要在一台计算机上处理所有这些复杂问题?我使用Oracle VirtualBox并为每个项目设置单独的VM。尽管我在笔记本电脑上工作,但它有8个内核,我已经将内存提升到16GB,并为每台机器设置了4GB的RAM
我可以一次运行多个虚拟机,并在Chrome中将所有活动项目设置为主页。使用桥接网络,每个虚拟机都有自己的IP地址,它们都在8080上侦听
另一个好处是,尽管我的主要项目是使用EclipseIndigo和LR6.1CEGA1开发的,但我还有另一个项目是使用EclipseJuno、其特定的IDE插件和LR6.1.1CEGA2开发的。因此,它也可以作为一个新的版本测试
VirtualBox是免费的。内存很便宜。请记住,您可以在不关闭虚拟机的情况下使其进入睡眠状态。这大约需要10-20秒,再次唤醒它需要30-60秒。老实说,我不希望得到不同Eclipse工作区的解决方案,但如果切换项目只需要2分钟,