バージョン4.2.1では、エラーが発生します
querydsl-maven-pluginをjdbcDriver com.mysql.cj.jdbc.Driver
(mysql-connector-java 8.0.11)と一緒に使用している間。 これは、MySQLへの接続に使用するユーザーが複数のデータベースにアクセスできるために発生します。 回避策として、 nullCatalogMeansCurrent=true
をjdbcUrl
に追加する必要がありました。
複数のスキーマに対して個別のパッケージを構成しますか?
または、スキーマをパターンでフィルタリングしますか?
Mavenプラグインがクラスがすでに生成されていることを検出すると失敗することを意図しているので、もう少し絵を描くことができますか?
tableNamePatternを介してテーブルをフィルタリングし、schemaPatternを介してフィルタリングしようとしましたが、これは効果がありません。 (スキーマは常にnullであり、カタログはデータベース名によって異なります)。
Edit1:dbは次のようになります:
db1:
db1.Users
db2:
db2.Orders
MetaDataExporter :: handleTable(pseudo json)で次のような2つのアイテムを返します。
{catalog: db1, schema: null, tableName: Users}
{catalog: db2, schema: null, tableName: Users}
Edit2:スキーマdb1のみを使用します。 私のアプリケーションではdb2はまったく使用されていませんが、ユーザーはたまたまそれにアクセスできます。
私は同じ問題を抱えています!
回避策:Qファイルを作成する特定のデータベースにのみアクセスできるデータベースに新しいユーザーを作成します。 終わり。