java.sql.SQLException: открытие db: «DB-NAME.db»: разрешение отклонено

Я разработал приложение Java, используя NetBeans IDE 8.2 на Ubuntu 14. Я попытался упаковать его, следуя инструкциям в этом учебнике, но это касается собственной упаковки NetBeans 7.4 в Windows. Я немного изменил его и использовал Netbeans 8.2 в Ubuntu (моя система), и я получил файл .deb в папке, указанной в учебнике.

Файл Project-name-1.0.deb может быть успешно установлен в моей системе Ubuntu, но при запуске этого установленного приложения отображается ошибка: java.sql.SQLException: Opening db:'DB-NAME.sqlite' : Permission denied

Приложение успешно выполняется в NetBeans без разрешения на отказ. Он показывает только ошибку, когда инсталлятор упакованного (.deb) установлен и запущен в Ubuntu. Как я могу упаковать приложение так, чтобы оно было установлено на Linux без разрешения на эту ошибку?

Приложение установлено в / opt с именем проекта, и все связанные файлы создаются в нем правильно при установке. Когда приложение выполняется, он пытается создать файл DB-NAME.db, который является причиной отказа в каталоге / opt. Как я могу это решить. Должен ли я добавить какой-либо код в build.xml для создания инсталляторов со всеми разрешениями хранилища в проекте NetBeans?

В моем проекте используется SQL-база данных для хранения данных. Я использовал JAR sqlite-JDBC-3.19.3.jar для своей библиотеки.

Класс java Connect.java выглядит следующим образом:

import java.sql.*; import javax.swing.JOptionPane; public class Connect { Connection con = null; Statement stmt = null; public static Statement ConnectDB() { try { Connection conn = null; Statement stmt = null; Class.forName("org.sqlite.JDBC"); conn = DriverManager.getConnection("jdbc:sqlite:JavaApp3DB.db"); stmt = conn.createStatement(); return stmt; } catch (Exception e) { JOptionPane.showMessageDialog(null, e); } return null; } }
0
задан 22 September 2017 в 12:29

0 ответов

Другие вопросы по тегам:

Похожие вопросы: