質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

IntelliJ IDEA

IntelliJ IDEA(インテリジェイ アイディア)は、JetBrains社が開発した、 JavaやScalaなどで利用される統合開発環境です。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

1回答

1614閲覧

jOOQを用いてMySQLスキーマからJavaソースを作成したい。

KonoLevel1

総合スコア12

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

IntelliJ IDEA

IntelliJ IDEA(インテリジェイ アイディア)は、JetBrains社が開発した、 JavaやScalaなどで利用される統合開発環境です。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

1クリップ

投稿2020/07/28 14:35

編集2020/07/28 14:37

お世話になります。

jOOQを利用して、MySQLスキーマからJavaソースを作成したく思います。
こちらのページの内容を実施したいのですが、
現在、エラーが発生しており、類似する記事などを調べましたが解決に至っていないため質問させてください。

com.mysql.jdbc.Driverが読み込めてないのかなとは思うのですが、現時点で解決に至っていません。

前提・実現したいこと

下記のコマンドを打ち込んでJavaソースを生成したい。

gradle generateSampleJooqSchemaSource

環境

  • 端末:Mac
  • エディタ:IntelliJ IDEA CE
  • jOOQ
  • Gradle
  • Spring Boot

build.gradle

build.gradle

1plugins { 2 id 'org.springframework.boot' version '2.3.2.RELEASE' 3 id 'io.spring.dependency-management' version '1.0.9.RELEASE' 4 id 'java' 5 id 'nu.studer.jooq' version '4.2' //jOOQを統合するプラグイン 6} 7apply plugin: 'java' 8group = 'com.example' 9version = '0.0.1-SNAPSHOT' 10sourceCompatibility = '14' 11 12// 全ての依存関係を見つけるためにMavenのセントラルリポジトリを指定 13repositories { 14 mavenCentral() 15} 16 17dependencies { 18 // SpringBootによって管理される依存関係ライブラリ 実装 19 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' 20 implementation 'org.springframework.boot:spring-boot-starter-jooq' 21 implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' 22 implementation 'org.springframework.boot:spring-boot-starter-web' 23 implementation 'org.jooq:jooq' // JOOQ導入 24 compile ('mysql:mysql-connector-java')// MySQL Driver 25 testImplementation('org.springframework.boot:spring-boot-starter-test') { 26 exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' 27 } 28 runtime("mysql:mysql-connector-java:5.1.34") 29 compile("mysql:mysql-connector-java") 30} 31 32 33// JOOQプラグインの設定 34 35jooq { 36 37 version = '3.13.1' // JOOQのバージョン指定 38 edition = 'OSS' // エディションの指定(無料版) 39 generateSchemaSourceOnCompilation = true // コンパイル時にスキーマソースを生成する 40 bbs_test(sourceSets.main) { 41 42 jdbc { 43 driver = 'com.mysql.jdbc.Driver' // データベースドライバのクラス名 44 url = 'jdbc:mysql://${MYSQL_HOST:localhost}:3306/bbs_test?serverTimezone=JST' // SQLに接続するためのURL 45 user = 'keiziban' // データベースにログインするためのユーザー名 46 password = 'secret' // データベースにログインするためのパスワード 47 properties { 48 property { 49 key = 'ssl' 50 value = 'true' 51 } 52 } 53 } 54 generator { 55 name = 'org.jooq.codegen.DefaultGenerator' 56 strategy { 57 name = 'org.jooq.codegen.DefaultGeneratorStrategy' 58 // ... 59 } 60 database { 61 name = 'org.jooq.meta.mysql.MySQLDatabase' // 対象とするデータベース 62 inputSchema = 'public' 63 forcedTypes { 64 forcedType { 65 name = 'varchar' 66 expression = '.*' 67 types = 'JSONB?' 68 } 69 forcedType { 70 name = 'varchar' 71 expression = '.*' 72 types = 'INET' 73 } 74 } 75 // ... 76 } 77 generate { 78 relations = true 79 deprecated = false 80 records = true 81 immutablePojos = true 82 fluentSetters = true 83 // ... 84 } 85 target { 86 packageName = 'nu.studer.sample' // 生成されるコードのパッケージ名 87 directory = 'src/main/java' // 生成されるコードを配置するディレクトリ 88 } 89 } 90 } 91} 92 93test { 94 useJUnitPlatform() 95}

下記のコマンドを実行

gradle generateSampleJooqSchemaSource

表示されるエラー

> Task :generateBbs_testJooqSchemaSource FAILED 7月 28, 2020 11:27:01 午後 org.jooq.tools.JooqLogger info 情報: Initialising properties : /Users/*****/Documents/spring-boot-practice/bbs/bbs-test/build/tmp/generateBbs_testJooqSchemaSource/config.xml 7月 28, 2020 11:27:01 午後 org.jooq.tools.JooqLogger error 重大: Cannot read /Users/*******/Documents/spring-boot-practice/bbs/bbs-test/build/tmp/generateBbs_testJooqSchemaSource/config.xml. Error : com.mysql.jdbc.Driver java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at org.jooq.codegen.GenerationTool.loadClass0(GenerationTool.java:977) at org.jooq.codegen.GenerationTool.loadClass(GenerationTool.java:921) at org.jooq.codegen.GenerationTool.run0(GenerationTool.java:346) at org.jooq.codegen.GenerationTool.run(GenerationTool.java:222) at org.jooq.codegen.GenerationTool.generate(GenerationTool.java:217) at org.jooq.codegen.GenerationTool.main(GenerationTool.java:189) FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':generateBbs_testJooqSchemaSource'. > Process 'command '/Library/Java/JavaVirtualMachines/jdk-14.jdk/Contents/Home/bin/java'' finished with non-zero exit value 255 * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.4.1/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 2s 1 actionable task: 1 executed

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

dependenciesに以下を追加したら動かないですか?

gradle

1jooqRuntime group: 'mysql', name: 'mysql-connector-java', version: '8.0.19'

投稿2020/07/29 03:25

perorin0418

総合スコア90

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KonoLevel1

2020/07/30 14:43

動作しました!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問