我花了几天的时间来为一个简单的jakartaEE / JavaEE Restful JPA Web应用程序编写一个docker-compose文件。 DB是PostgreSQL,应用程序服务器是payara。该应用程序将少量条目插入数据库,并在每个剩余调用响应中返回集合。当我在本地安装的payara和Postgres中部署相同的应用程序时,它运行良好。但是docker-compose失败并显示错误:
An error occurred during deployment: Class
com.docker.java.petstore.service.PetstoreService has unsupported major or
minor version numbers,which are greater than those found in the Java
Runtime Environment version 1.8.0_222. Please see the server.log for more details.
我尝试从payara管理控制台部署war文件,但由于相同的错误而失败。
相关代码如下所示: https://gist.github.com/JohnyzHub/cf8e9560b8640dbfd27dc4bb98d5991c
使用的环境:
java 11
JakartaEE 8
Payara appserver
postgresql
使用glassfish-resource.xml
文件动态创建连接池和数据源。
该错误看起来很奇怪,我使用的是Java 11,但该错误与特定的Java 8版本有关。我不知道这里可能有什么问题。
当我使用相同的docker文件部署没有JPA层的类似Java 11 Web应用程序时,在docker上运行良好。
让我知道是否需要其他详细信息。
感谢您的帮助。