我正在使用 Liferay Portal 6.1 CE。
我已经在 eclipse indigo 中设置了开发环境。
当我部署一个 portlet 时,它会移动到 Portal Bundle 内的部署文件夹。但没有被部署。我已经测试过另一个战争,放置在部署文件夹中。但同样发生
热部署不起作用。我能做什么?帮帮我
可能是您移动了一个安装,并且您当前的设置包括与您期望的不同的 liferay.home。
在 Liferay 启动时,日志会说明 Liferay 监控的自动部署目录。在 tomcat/logs/catalina.out 中查找如下所示的一行:
08:34:58,902 INFO [pool-2-thread-1][ServerDetector:154] Server supports hot deploy
08:34:58,910 INFO [pool-2-thread-1][PluginPackageUtil:1030] Reading plugin package for the root context
08:35:01,137 INFO [pool-2-thread-1][AutoDeployDir:106] Auto deploy scanner started for /opt/lds/lds161/liferay-portal-6.1.20-ee-ga2/deploy
此外,无论 Tomcat/Liferay 以何种用户身份运行,都需要对该目录以及 tomcat 的 webapps 目录具有读/写权限,以便热部署工作。如果无法从自动部署文件夹中删除插件,则不会部署它们。
通常,您会在 portal-setup-wizard.properties 中找到 liferay.home 设置(这是部署目录的默认父目录),但此设置也可能已转换到您的数据库中(以防您想知道为什么不会拾取对此值的更改。
我可以在您的帖子中看到 2 个问题。
1.
热部署不起作用
确保您已在文件中指定热部署文件夹portal-ext.properties
。
auto.deploy.deploy.dir=/app/portal/liferay-portal-6/deploy
然后,您可以在 /app/portal/liferay-portal-6/deploy 文件夹中部署您的战争文件。
Liferay 将其拾取并将其放入 /app/portal/liferay-portal-6/../server/default/deploy 文件夹中。
更多细节可以在这里找到。
2.
它移动到 Portal Bundle 中的 deploy 文件夹。但没有被部署
您在日志中看到任何异常吗?不是说有 1 个 Portlet 可供使用吗?
检查服务器配置中的自动部署路径。
您需要在插件 sdk 中的 build.(user_name).properties 中添加以下条目。如果您没有找到此文件,则需要创建它。设置你的目录
app.server.parent.dir=D:\Projects\Site\liferay-portal-6.2.0-ce-ga1
app.server.portal.dir = D:\Projects\Site\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\webapps\ROOT
app.server.lib.global.dir = D:\Projects\Site\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\lib\ext
app.server.deploy.dir = D:\Projects\Site\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42\webapps
app.server.type = tomcat
app.server.dir = D:\Projects\Site\liferay-portal-6.2.0-ce-ga1\tomcat-7.0.42
希望这会帮助你。