java - 如何使用 Liferay 和 Maven 高效地编写 portlet?

标签 java maven liferay

我可以轻松地创建一个 Maven 项目来对 portlet 进行编程(例如使用原型(prototype))。但是为了将这个项目部署到 Liferay,我必须运行:

mvn package liferay:deploy

即使我只更改一个简单的 JSP 文件,我也必须重新部署整个 portlet 应用程序。有没有办法加快这个开发过程?

我不想使用 Ant,因为那样我就不得不处理依赖关系和其他问题。我真的很想使用 Maven 来开发 Liferay portlet 应用程序。

我试过 JRebel,但由于打包到 WAR 文件,它的魔法不起作用:(

重现这种情况:

  1. 从具有 artifactId 的 maven 原型(prototype)创建项目:liferay-portlet-archetype
  2. 将属性添加到 pom.xml:liferay.version、liferay.auto.deploy.dir
  3. 启动Liferay
  4. mvn package liferay:deploy -> 这将创建一个 WAR 文件并将其部署到 liferay 自动部署目录。
  5. 每次你想改变一些东西,你必须做 mvn package liferay:deploy

这比 hello world 更耗时。

据我所知,这应该是最佳实践。但是关于这个主题的 Liferay 文档很少。还有别的办法吗?

最佳答案

使用 STS(SpringSource 工具套件)和 Liferay IDE 的组合解决了问题。通过这种组合,根本不需要使用 Liferay Maven 插件。只需添加 Liferay 服务器,在此服务器上部署 Maven 应用程序即可。

将此组合与 JRebel 结合使用是恕我直言,最有效的解决方案。

关于java - 如何使用 Liferay 和 Maven 高效地编写 portlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13488237/

相关文章:

java - Gradle 传递依赖解析到 alpha 版本?

Liferay - 选择组织还是门户实例

Java的Thread.sleep导致我之前调用的方法取消

Javadoc @author 标签良好实践

java - 运行依赖于另一个java类的java文件

java - 无法执行目标 org.codehous.mojo :exec-maven-plugin:1. 4.0:java

java - Maven:创建包含站点的分发程序集(多模块)

java - 在扩展类上添加 'throws' ?

liferay - 如何在控制面板部分添加自定义 portlet

javascript - Liferay 6.2 模式在关闭时添加回调