MeWrite Docs

ClassNotFoundException

クラスパスに指定されたクラスが見つからない場合に発生するエラー

概要

ClassNotFoundExceptionは、JVMが指定されたクラスをクラスパスから見つけられない場合に発生します。通常、依存関係の設定ミスやJARファイルの配置問題が原因です。

エラーメッセージ

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

原因

  1. JARファイルがクラスパスにない: 必要なライブラリが配置されていない
  2. 依存関係の設定ミス: Maven/Gradleの設定が不完全
  3. クラス名のタイプミス: 完全修飾クラス名が間違っている

解決策

1. Mavenで依存関係を追加

1
2
3
4
5
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.33</version>
</dependency>

2. Gradleで依存関係を追加

1
implementation 'mysql:mysql-connector-java:8.0.33'

3. 手動でJARをクラスパスに追加

1
java -cp ".:lib/mysql-connector-java-8.0.33.jar" com.example.Main

Java の他のエラー

最終更新: 2025-12-09