Я разработал небольшую игру, в которой текст, вводимый пользователем, должен быть размещен в базе данных MS Access.
Все это отлично работает в NetBeans, но всякий раз, когда я обращаюсь к нему из файла JAR (который в конечном итоге мне нужно передать моему клиенту), он ничего не отправляет в базу данных. На самом деле он возвращает следующую ошибку:
java.sql.SQLException: No suitable driver found for jdbc:ucanaccess://C:\Users\Paul\Desktop\Spelli\RispostiDB.mdb
Это соответствующий код:
public void postAnsDB()
{
String tableName = "Form"+studentGroup +"_"+studentSurname+"_"+studentName+"";
answerModifier();
try{
String strurl="jdbc:ucanaccess://C:\\Users\\Paul\\Desktop\\Spelli\\RispostiDB.mdb";
Connection conn=DriverManager.getConnection(strurl, "", "");
Statement stmt=conn.createStatement();
//Post Student Details to DB
String post = "INSERT INTO "+tableName+"(ID, responses, Correct_Response, Valid_Invalid, Marks) VALUES ('"+ansID+"', '"+answer+"', '"+correct+"', '"+valid+"', '"+marks+"');";
stmt.executeUpdate(post);
}
catch(Exception e)
{
System.out.println("Exception found in postAnsDB: "+e);
}
}
dist
в домашней папке вашего проекта, помещает файл JAR для вашего кода в эту папку, а также помещает зависимости (файлы JAR для необходимых компонентов, таких как UCanAccess, Jackcess, HSQLDB и биты Apache Commons) во вложенную папку с именемlib
. Вам необходимо убедиться, что папкаlib
скопирована на целевую машину и помещена в ту же папку, что и ваш основной файл JAR. Подробнее см. здесь. - person Gord Thompson   schedule 01.10.2016