首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >热部署Liferay Maven portlet从Intellij Idea到Liferay Tomcat捆绑

热部署Liferay Maven portlet从Intellij Idea到Liferay Tomcat捆绑
EN

Stack Overflow用户
提问于 2013-05-10 20:12:39
回答 1查看 4.2K关注 0票数 22

我正在开发一个Liferay,我无法忍受等待Maven构建.war文件,然后将该.war复制到LifeRay的自动部署目录,直到LifeRay完成部署。这就是为什么我希望构建、启动Tomcat (与LifeRay捆绑),并通过Intellij部署我的portlet,并启用热部署。

我试过使用从IntelliJ运行Liferay (来自Liferay ),但无法让它工作。

我也尝试了以下问题,但没有结果:

环境:

  • Liferay CE 6.1.1 (Tomcat包)
  • 使用原型的Maven项目:救生筏-portlet-原型。
  • Intellij IDEA 12.1.2。
  • JDK 6.

有人知道怎么做吗?

EN

回答 1

Stack Overflow用户

发布于 2014-02-06 07:34:24

在服务器上部署.war文件(Liferay+Tomcat Bundle) -->讨论如何将.war文件降到救生筏部署目录,而这不是自动部署。

从技术上讲,这是自动部署,因为它是由应用服务器的AutoDeploy Scanner处理的,但可能不是自动部署热部署的意思。

如何使用Liferay和Maven高效地编写portlets程序?-->我想配置Intellij,不想使用另一个IDE。我没有和JRebel试过。

想法石头,不要改变它。然而,即使我个人不使用JRebel,我也从使用它的同事那里听到了很多积极的反应。不要放弃此选项--您可能需要签出本教程这一个

现在,给出了答案:--这可能更像是一个提示,而不是一个确切的解决方案,但我已经使用了很长时间。如果您不想重新部署需要构建的整个模块,那么如果您的服务器配置为允许远程调试,则可以使用IDEA对其进行热部署。

当您在代码中进行一些更改并想要测试它时,只需连接到正在运行的应用程序服务器,就好像要远程调试它并编译您更改的类一样。它会自动进行热部署。然后断开/结束调试,然后检查您的更改!

如果您过多地更改了类的结构,或者更改了方法的参数,这是不起作用的,但是当您试图修复方法主体中的空指针时,这是一个很大的帮助。只需连接并编译即可。

如果您不想使用JRebel,希望它对您有所帮助。

提示:如果您想使用自动部署方法(文件夹"deploy")来简化您的工作,那么您可以通过只指定要构建的模块来加速它,方法是创建一个概要文件:

在您的主(顶级) pom.xml中有一个名为profiles的标记。您可以在那里添加一个新的配置文件,并指定模块。例如:

代码语言:javascript
复制
<profile>
<id>dev</id>
<modules>
    <module>your-module</module>                
    <module>ejbs-for-your-module</module>               
</modules>  
</profile>

之后,您可以使用配置文件使用Maven构建您的项目。例如,如果您想使用"dev“配置文件:

清洁安装-Pdev

或者您也可以编写一个部署脚本,它将为您完成必要的手动任务。开发人员编写bash/批处理脚本以清理目标、构建必要的东西、获取wars并将它们复制到部署文件夹是很常见的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16490128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档