Java 9,Hibernate和java.sql / javax.transaction

前端之家收集整理的这篇文章主要介绍了Java 9,Hibernate和java.sql / javax.transaction前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图使用Hibernate将项目“升级”到Java 9,但是我在使模块正常运行时遇到了问题.@H_301_2@

我的module-info.java的相关部分如下所示:@H_301_2@

@H_301_2@

module test {

    ...

    requires java.base;
    requires hibernate.core;
    requires javax.transaction;
    requires java.sql;

}

以及我POM中的相关依赖项@H_301_2@

> org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec,2.0.0.Alpha1
> org.hibernate:hibernate-core,5.2.12.Final
> javax.transaction:javax.transaction-api,1.2@H_301_2@

问题是,如果我运行程序,我得到javax.transaction.SystemException的NoClassDefFoundError.我调查了这个,很明显,my module is missing a requires on javax.transaction.@H_301_2@

所以我在javax.transaction-api上添加了一个模块依赖.然后我继续尝试再次运行程序 – 现在我缺少java.sql.sqlException.@H_301_2@

这是我遇到的问题:如果我add a dependency on the module java.sql,包含这个类,我最终会发生冲突:@H_301_2@

@H_301_2@

module reads package javax.transaction.xa from both java.sql and javax.transaction.api@H_301_2@

java.sql和javax.transaction.api包含不同的包,并且有一个共同的(javax.transaction.xa),但我需要所有这些包.@H_301_2@

我该如何处理?我有什么简单的遗失吗?@H_301_2@

最佳答案
使用版本1.3而不是javax.transaction-api的1.2,在此版本中已删除javax.transaction.xa.@H_301_2@

Maven依赖:@H_301_2@

@H_301_2@

猜你在找的Java相关文章