編集: 以下の回答にあるように、これはバグであり、他の誰かによって報告されています。
私のプロジェクトで、Hibernate Tools を使用して DTO を生成しようとしていました (これは、そのタスクについて昨日開いた質問です)。現在の Eclipse Neon インスタンスに Hibernate Tools をインストールしたところ、以下で詳しく説明する問題が発生しました。
次に、JBoss Developer Studio インストーラー全体をダウンロードしてインストールし、Eclipse インスタンスに問題があるかどうかを判断しました。無駄に。
(注: Eclipse インスタンスで EclipseLink を使用すると、ダイアグラムからエンティティを生成し、エンティティからテーブルを生成できます)
私が抱えている問題は、Hibernate 構成を作成するとき、つまり、さらに下のダイアログ ウィンドウで [OK] ボタンをクリックしたときに、[エラー ログ] ビュー (およびダイアログ ボックスとしても) にこの例外が表示されることです。
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at org.hibernate.tool.util.MetadataHelper.getMetadataFromMethod(MetadataHelper.java:78)
at org.hibernate.tool.util.MetadataHelper.getMetadata(MetadataHelper.java:16)
at org.jboss.tools.hibernate.runtime.v_5_1.internal.ConfigurationFacadeImpl.getMetadata(ConfigurationFacadeImpl.java:168)
at org.jboss.tools.hibernate.runtime.v_5_1.internal.ConfigurationFacadeImpl.buildMappings(ConfigurationFacadeImpl.java:106)
at org.hibernate.console.ConsoleConfiguration$4.execute(ConsoleConfiguration.java:272)
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:108)
at org.hibernate.console.ConsoleConfiguration.buildMappings(ConsoleConfiguration.java:270)
at org.hibernate.eclipse.console.workbench.ConsoleConfigurationWorkbenchAdapter.getChildren(ConsoleConfigurationWorkbenchAdapter.java:44)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:98)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:104)
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:231)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.hibernate.tool.util.MetadataHelper.getMetadataFromMethod(MetadataHelper.java:72)
... 12 more
Caused by: java.lang.NullPointerException
at org.jboss.tools.hibernate.runtime.v_5_1.internal.JPAConfiguration.getMetadata(JPAConfiguration.java:36)
... 17 more
これは構成のスクリーン キャプチャです (データベース ダイアログがMySQL (InnoDB)
on tabに設定されOptions
ている以外は、他のオプションには触れていません)。
これが私のhibernate.propertiesファイルの内容です:
hibernate.bytecode.use_reflection_optimizer=false
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.password=verbus
hibernate.connection.url=jdbc:mysql://localhost:3306/verbus
hibernate.connection.username=verbus
hibernate.ddl-auto=none
hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.format_sql=true
hibernate.search.autoregister_listeners=true
hibernate.show_sql=true
hibernate.validator.apply_to_ddl=false
hibernate.default_entity_mode=pojo
hibernate.order_inserts=true
hibernate.order_updates=true
持続性ユニットが存在し、Dali の JPA ダイアグラム エディター コンポーネントを使用して作成および更新されました。
データベースが空であるか、テーブルが EclipseLink によって既に生成されているかどうかは、何も変わりません。
これは設定ミスが原因だと思いますが、標準の例外以外のエラーメッセージからヒントが得られないため、どうすることもできません。
このエラーの正確な原因を特定することは可能ですか?