最近,我们专注于简化Liberty Maven插件的使用并改善Open Liberty的开发人员体验。这篇文章描述了3.1版本的发行版中可用的各种增强和简化liberty-maven-plugin。
什么是新的?
最大的增强是增加了一种开发模式,该模式可以在任何文本编辑器或IDE中提供热重载和部署,按需测试以及开发应用程序时的调试器支持。您可以在Open Liberty开发模式博客文章中阅读有关dev模式的更多信息。
其他值得注意的增强功能包括:
使用Maven属性指定Liberty配置的能力
run现在,目标将隐式创建服务器,安装引用的功能server.xml,并在前台启动服务器之前部署应用程序。
有关更多详细信息,请参阅3.1发行说明。
发生了什么变化?
为了简化Liberty Maven插件的开发人员体验,我们进行了以下更改:
简化目标名称
简化了服务器安装,以默认情况下从Maven Central安装最新的Open Liberty内核
更改了通用服务器参数的优先级,并删除了单个文件的默认设置
将install-apps和deploy目标功能合并为一个deploy目标
将looseApplication默认值更改为true
修改了package目标的支持packageName,packageDirectory以及packageType与逻辑默认参数
有关更多详细信息,请查看3.0发行说明。
简化的pom.xml
通过所有这些更改,可以大大简化的pom.xml配置liberty-maven-plugin。以下是几个示例(在3.0及更高版本groupId中,插件的io.openliberty.tools)。
例子1
---
<project>
...
<build>
<plugins>
<!-- Enable liberty-maven-plugin -->
<plugin>
<groupId>io.openliberty.tools</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>3.1</version>
</plugin>
</plugins>
</build>
...
</project>
---
与pom.xml例1中,你可以简单地运行mvn liberty:run您的项目。其结果是,liberty-maven-plugin安装从Maven的中央最新的开放自由的内核,创建服务器,安装被引用的功能server.xml(可放置在默认位置configDirectory是src/main/liberty/config),部署应用程序,并在前台启动服务器。无需进一步配置即可开始!
例子2
<properties>
<liberty.jvm.minHeap>-Xms512m</liberty.jvm.minHeap>
<liberty.env.JAVA_HOME>/opt/ibm/java</liberty.env.JAVA_HOME>
<liberty.var.someVariable1>someValue1</liberty.var.someVariable1>
<liberty.defaultVar.someDefaultVar1>someDefaultValue1</liberty.defaultVar.someDefaultVar1>
</properties>
示例2显示了如何使用中的Maven属性pom.xml来指定Liberty配置。也可以使用在命令行上覆盖属性-D。这提供了一种测试不同服务器配置的简便方法。