当前位置: 首页 > 知识库问答 >
问题:

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

田兴怀
2023-03-14

我正在开发Liferay portlet,我无法忍受等待Maven构建。war文件,然后复制。war转到LifeRay的自动部署目录,最终(再次)等待LifeRay完成部署。这就是为什么我想构建、启动Tomcat(与LifeRay捆绑),并通过Intellij IDEA部署我的portlet,并启用热部署。

我试着从IntelliJ(从Liferay Wiki)运行Liferay,但没有成功。

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

  • 部署。服务器上的war文件(Liferay Tomcat捆绑包)--

环境:

  • Liferay CE 6.1.1(Tomcat捆绑包)
  • 使用原型的Maven项目:liferay portlet原型
  • Intellij IDEA 12.1.2
  • JDK 6

有人知道怎么做吗?

共有1个答案

洪华皓
2023-03-14

在服务器上部署. war文件(Liferay Tomcat Bundle)-

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

如何使用Liferay和Maven高效地编程Portlet--

想法石头,不要改变。然而,即使我个人不使用JRebel,我也从使用它的同事那里听到了很多积极的反应。。不要放弃这个选项——你可能想看看这个教程或者这个。

现在来回答这个问题:这可能更像是一个提示,而不是一个精确的解决方案,但我已经用了很长时间了。如果您不想重新部署需要构建的整个模块,可以使用IDEA热部署它,前提是您的服务器配置为允许远程调试。

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

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

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

提示:如果要使用自动部署方法(文件夹“deploy”)简化doployment,则可以通过创建配置文件,仅指定要构建的模块,从而加快doployment的速度:

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

<profile>
<id>dev</id>
<modules>
    <module>your-module</module>                
    <module>ejbs-for-your-module</module>               
</modules>  
</profile>

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

mvn清洁安装-pdev

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

 类似资料:
  • 我对奥蕾莉亚是新来的。我能够运行Aurelia应用程序使用‘吞咽手表’在本地系统。现在我想把Aurelia应用程序放在一个安装了NodeJS的外部服务器中。我使用“gulp bundle”创建dist文件夹条目。绑定后部署的下一步是什么?Aurelia官方文件没有解释捆绑步骤后。

  • 问题内容: 这是基于此答案的跟进。 我有一个看起来像的结构 和内装看起来像 作为的一部分,我想捆绑看起来应该包含 如何将其创建为或并与一起生产? 问题答案: 您可以用来执行该任务。 在中创建程序集定义文件 在文件中,添加插件声明,执行阶段和目标。 可以在这里找到更多格式文件或自定义格式文件:https : //maven.apache.org/plugins/maven-assembly- plu

  • 我正在开发一个简单的应用程序来演示Apache Karaf的使用。我在eclipse.Now开发了一个简单的基于maven的动态Web项目,我想在apache中部署它karaf.Following代码- POM中的家属。可扩展标记语言 MANIFEST.MF 自定义清单文件的给定路径 现在每当我试图在karaf中安装应用程序时,使用- 我得到错误作为- 执行命令时出错:安装软件包时出错:无法安装软

  • 我正在通过Intellij IDEA Tomcat集成测试Web应用程序(Apache Wicket Based)。在那里,我注意到web应用程序认为它在tomcat的bin文件夹中运行。另外,当我调用时,它返回。但是当我在tomcat中手动部署相同的web应用程序时,它工作正常。如何在Intellij IDEA中解决这个问题?

  • 以下是设置: 使用Subversion的多开发者环境 我们可能不会改变工具;我们既不能使用Maven,也不能使用JRebel。硬件升级也不在范围之内。 源代码(包括与web相关的文件)签出到: 这个目录包括一个通用的开发结构(粗体从存储库中签出): 编译文件 dist-. war文件 nbproject-项目文件 src-Java源代码 web-JSF页面,WEB-INF目录,CSS文件等 bui

  • 在将SPRING DM OSGI捆绑包部署到IBM Liberty中时,我遇到以下解析异常。 原因:组织。springframework。豆。工厂xml。XmlBeanDefinitionStoreException:URL[bu]的XML文档中的第2行ndleentry://240.fwk843512726/WEB-INF/applicationContext.xml]无效;嵌套异常为org。x