我最近迁移到Java 9并发现以下错误。
初始SessionFactory创建failed.org.hibernate.internal.util.config.ConfigurationException:无法在RESOURCE hibernate.cfg.xml中的第0行和第0列执行解组。消息:null
我的配置文件的内容是:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
<property name="hibernate.connection.url">jdbc:sqlserver://localhost</property>
<property name="hibernate.connection.databasename">ActiveDirectory</property>
<property name="hibernate.connection.integratedsecurity">true</property>
<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="hibernate.enable_lazy_load_no_trans">true</property>
<property name="connection.pool_size">1000</property>
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">1000</property>
<property name="hibernate.c3p0.timeout">300</property>
<property name="hibernate.c3p0.max_statements">1000</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>
</session-factory>
</hibernate-configuration>
当我运行.configure(&#34; hibernate.cfg.xml&#34;)时抛出异常。 你知道我应该怎么面对它吗?
答案 0 :(得分:0)
错误:线程“main”中的异常java.lang.NoClassDefFoundError:javax / xml / bind / JAXBException
这是因为Java 9。
Java 9已弃用java.xml.bind模块,并已将其从默认类路径中删除。这就是我们得到类未找到异常的原因。 javax.xml.bind包现在是Module java.xml.bind的子包。
所以我们只需要将该模块添加到运行时配置中。
解决方案:
右键单击您的Java文件,例如:CreateStudentDemo.java
选择运行方式&gt;运行配置...
在中心面板中,单击选项卡参数
在VM Arguments部分中,输入: - add-modules java.xml.bind
单击“运行”
您的应用程序将成功运行。
让我知道你的结果。
: - )
模块是Java 9的新功能。您可以获得有关Java 9的详细信息 模块在这里:https://blogs.oracle.com/java/modular-development