Java 9、Hibernate和Java.sql/javax.transaction
我曾尝试使用Hibernate将一个项目“升级”到Java9,但在使模块正常工作时遇到了问题 我的Java 9、Hibernate和Java.sql/javax.transaction,java,hibernate,maven,jdbc,java-9,Java,Hibernate,Maven,Jdbc,Java 9,我曾尝试使用Hibernate将一个项目“升级”到Java9,但在使模块正常工作时遇到了问题 我的模块info.java的相关部分如下所示: module test { ... requires java.base; requires hibernate.core; requires javax.transaction; requires java.sql; } 我的POM中的相关依赖项是 org.jboss.spec.javax.transac
模块info.java
的相关部分如下所示:
module test {
...
requires java.base;
requires hibernate.core;
requires javax.transaction;
requires java.sql;
}
我的POM中的相关依赖项是
,2.0.0.1org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec
,5.2.12.Finalorg.hibernate:hibernate核心
,1.2javax.transaction:javax.transaction api
javax.transaction.SystemException
的NoClassDefFoundError
。我调查了一下,很明显
因此,我在javax.transaction api
上添加了一个模块依赖项。然后我继续尝试再次运行该程序-现在我缺少java.sql.SQLException
以下是我遇到的问题:如果我(包含该类)最终导致冲突:
模块从java.sql
和javax.transaction.api
读取包javax.transaction.xa
java.sql
和javax.transaction.api
包含不同的包,并且有一个共同的包(javax.transaction.xa
),但是我需要所有的包
我该怎么处理?是否缺少一些简单的东西?使用1.3版而不是
javax.transaction api的1.2版,在这个版本中javax.transaction.xa
已被删除
Maven依赖项:
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>javax.transaction-api</artifactId>
<version>1.3</version>
</dependency>
javax.transaction
javax.transaction-api
1.3
似乎与a类似,并且有一个JSR 907的MR正在进行()以修复此问题。一旦修复了这个问题,我就希望JTAAPI工件的新版本能够以正确的模块名发布,并且只导出javax.transaction。