几周前,我写了一篇文章,标题为哪个IDE和服务器支持Java EE 8和Java9 ,着眼于Java 9和Java EE 8之间的当前运行状态。您可以期待事情发展很快,我们现在有了一些alpha和支持Java 9和Java EE 8的开发版本。这些是–
- Payara 5 –适用于payaradomain
- 开放自由
亚当·贝恩(Adam Bein) 在Java 9上发布了一个Java EE 8视频,内容涉及如何使用Netbeans在Open Liberty上部署Java 9应用程序。 它是一个很棒的视频,值得一看。
我决定使用与Adam相同的方法在Eclipse Oxygen上部署JSF应用程序
这篇文章涉及安装,项目的第一部分安装核心应用程序,下一篇文章将通过构建JSF 2.3应用程序对此进行扩展
安装
Java 9
确保在类路径和JAVA_HOME上都运行Java 9,并确保已安装Maven
开放自由
Open Liberty来自IBM开放源代码WebSphere Liberty,是完全兼容的Java EE 7服务器。 他们还拥有一个早期发行的Java EE 8服务器 ,该服务器的开发版本一直在不断改进。 我们将为此项目使用开发版本,可以从以下位置下载:
日食
Eclipse Oxygen也有Java 9版本可供下载 -我使用的是Eclipse的Java EE版本
按照安装说明进行操作。 这只是将Open Liberty Server解压缩到您的首选位置,对于Eclipse Oxygen也是如此
启动Eclipse Oxygen –
在Eclipse Oxygen上安装Open Liberty
最后,我们需要安装“用于氧气的IBM Liberty开发工具” –帮助> Eclipse Marketplace
然后在“服务器”选项卡上连接我们的Open Liberty服务器
最后,指向您的Open Liberty部署位置,并确保您正在使用Java 9 –
您可以点击此处完成
最后,我们需要安装Java EE 8功能–
- 双击“ WebSphere Application Server Liberty”
- 点击“打开服务器配置”,然后点击“功能”
然后“添加...”并选择“ javaee-8.0”
ID还删除了JSF 2.3,因为Javaee-8.0中包含了多数民众赞成
如果需要,您可以立即启动服务器
第一个项目
为Java EE 8找到的最佳Ive原型也来自Adam Bein。
要运行它,只需键入–
mvn archetype:generate -DinteractiveMode=false -DarchetypeGroupId=com.airhacks -DarchetypeArtifactId=javaee8-essentials-archetype -DarchetypeVersion=0.0.2 -DgroupId=com.javabullets.javaee8 -DartifactId=javaee8
然后,立即进行编译并确保没有错误–
E:\code\javaee8>mvn clean package
请注意,原型是针对Java 8编译的,我们将在下一节中将其移至Java 9。
源代码可从https://github.com/farrelmr/javaee8获得。
在Eclipse中打开
在“企业资源管理器”中,选择–
导入>导入…> Maven>现有Maven项目
导航到Java EE 8目录,单击Finish,然后让Eclipse将您的项目加载到Eclipse中
打开pom.xml文件,并将源和目标从1.8更改为1.9 –
<properties><maven.compiler.source>1.9</maven.compiler.source><maven.compiler.target>1.9</maven.compiler.target><failOnMissingWebXml>false</failOnMissingWebXml></properties>
然后运行maven(右键单击项目> Run As…> maven安装)
将项目添加到Open Liberty
转到–服务器>“ WebSphere Application Server Liberty”>右键单击“添加和删除…”。
- 将我们的javaee8应用程序从“可用”移动到“已配置”
- 按完成
开始开放自由
服务器>“ WebSphere Application Server Liberty”>右键单击“开始”
您将收到有关设置密钥库的错误消息。 我只是取消了它的“本地连接器”功能所使用的功能。 我还没有找到在Eclipse上清除此错误的方法-但当我遇到时会发布。
服务器将启动,您可以在以下位置访问预安装的应用程序:
http:// localhost:9080 / javaee8 / resources / ping
Woohoo在Java EE 8 Open Liberty上运行Java 9!
结论
这篇文章使用Adam Bein的方法在Java EE 8 Open Liberty上运行Java 9 –但演示了如何将其集成到Eclipse Oxygen中。 下一篇文章将基于此原型创建一个简单的JSF 2.3应用程序
最后,我认为很高兴看到在Java 9上提供Java EE 8的进展,并感谢参与此工作的开发人员
翻译自: https://www.javacodegeeks.com/2017/12/java-9-java-ee-8-using-eclipse-open-liberty.html