Java, Maven, подключи SQL, нет подходящего драйвера - PullRequest
0 голосов
/ 25 августа 2018

Я строю проект, используя Netbeans IED, с Java. В проекте используется maven, и я пытаюсь подключить его к базе данных sql, которая у меня возникла. Код работает в Java, но не с Maven.

Здесь ошибка: Не найден подходящий драйвер для jdbc: derby: // localhost: 1527 / База данных

Java-код:

public class DatabaseTest {

    public static Connection ConnectionObj = null;
    public static Statement SqlStatement = null;
    public static ResultSet Sqlresult = null;
    public static ResultSetMetaData MetaData = null;
    public static String query = "Select * from Wallet";
    public static String url = "jdbc:derby://localhost:1527/Database";
    public static String user = "ABM";
    public static String pass = "password2";

    public static void main(String[] args) {

        try {    
            //Allows you to connect the database
            ConnectionObj = DriverManager.getConnection(url, user, pass);
            SqlStatement = ConnectionObj.createStatement();
            Sqlresult = SqlStatement.executeQuery(query);
            MetaData = Sqlresult.getMetaData();
            System.out.println("Connection worked");
        } catch (SQLException e) {
            System.err.println("Got an exception! ");
            System.err.println(e.getMessage());
        }
    }
}

Зависимость выпускного вечера:

  <dependencies>
   <dependency>
 <groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
  <groupId>org.apache.derby</groupId>
  <artifactId>derby</artifactId>
  <version>10.14.1.0</version>

</dependency>

https://gyazo.com/8937aada3bd4a8f5b108b5dc9b386dd7

1 Ответ

0 голосов
/ 25 августа 2018

Эта часть вашего файла POM неверна:

  <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
  </dependency>

Ваша программа пытается использовать JDBC для подключения к базе данных Derby, поэтому вы должны использовать драйвер JDBC Derby, а не драйвер JDBC MySQL.

Замените вышеприведенное на следующее:

  <dependency>
    <groupId>org.apache.derby</groupId>
    <artifactId>derbyclient</artifactId>
    <version>10.14.1.0</version>
  </dependency>

(используйте ту же версию, что и ваша основная версия Derby ...)


код работает на Java, но не с Maven.

Любопытно.Возможно, вы правильно устанавливаете путь к классам во время выполнения Java.

...