Как начать работать с Jackcess?

Я новичок в java. Сегодня попробовал сделать приложение для редактирования баз данных mdb. Я решил использовать Jackcess, но у меня всегда есть какие-то ошибки. Я новичок, поэтому я использую текстовый редактор для написания кода, а затем использую javac из cmd (это не самое эффективное решение, но оно позволяет лучше понять всю идею о java). Моя проблема в том, что я не могу сделать приложение, которое будет компилироваться и работать правильно.

Example_1: Создайте файл базы данных Access (.mdb или . accdb) с использованием Java по этой ссылке Сарат Кумар Сиван говорит, что вам нужно установить Jackcess, commons-logging, commons-lang jar и попробовать код. Я скачал эти баночки. Затем я переместил их в этот каталог:

C:\Program Files\Java\jdk1.8.0_91\jre\lib\ext

После этого я попытался скомпилировать код, но получил эту ошибку:

JackcessLibrary.java:20: error: cannot find symbol
return Database.create(new File(databaseName));
               ^
symbol: method create(File)
location: interface Database
1 error

Я понятия не имею, что это значит.

Пример_2: на официальной странице Jackcess можно прочитать, что запустить можно простой командой:

Database db = DatabaseBuilder.open(new File("mydb.mdb"));

поэтому я написал это:

import com.healthmarketscience.jackcess.ColumnBuilder;
import com.healthmarketscience.jackcess.Database;
import com.healthmarketscience.jackcess.*;
import com.healthmarketscience.jackcess.Table;
import com.healthmarketscience.jackcess.TableBuilder;
import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.sql.Types;

class Jackcess2 {
    public static void main (String[] args) {
        Database db = DatabaseBuilder.open(new File("mydb.mdb"));       
    }
}

который дал мне эту ошибку:

Jackcess2.java:21: error: unreported exception IOException; must be caught or declared to be thrown
Database db = DatabaseBuilder.open(new File("mydb.mdb"));
                                  ^
1 error

поэтому я отредактировал это:

import com.healthmarketscience.jackcess.ColumnBuilder;
import com.healthmarketscience.jackcess.Database;
import com.healthmarketscience.jackcess.*;
import com.healthmarketscience.jackcess.Table;
import com.healthmarketscience.jackcess.TableBuilder;
import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.sql.Types;

class Jackcess2 {
    public static void main (String[] args) {
        try {
            Database db = DatabaseBuilder.open(new File("Uruchom.odb"));
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println("Done.");        
    }
}

и теперь я могу скомпилировать его, но после запуска у меня есть это сообщение:

Error: Could not find or load main class Jackcess2.java

Я предполагаю, что мне нужно включить класс Jackcess, но я понятия не имею, как это сделать. Я никогда не видел ничего подобного раньше.

Я пробовал другие способы использования Jackcess, но ничего не работало должным образом. Можете ли вы объяснить мне, как использовать Jackcess и что я пропустил?


person danski88    schedule 22.01.2017    source источник
comment
Успешная компиляция вашего исходного кода .java создаст файл .class, который вы фактически будете выполнять. Судя по вашему исходному коду, результирующий файл .class будет называться Jackcess2.class, который вы должны выполнить с помощью команды java Jackcess2. (Обратите внимание, что вы не указываете расширение файла .class при запуске приложения.)   -  person Gord Thompson    schedule 23.01.2017
comment
Я сделал 1 ошибку: должно быть: Ошибка: Не удалось найти или загрузить основной класс Jackcess2.java ("два" после Jackcess). Горд Томпсон: моя ситуация именно такая, как вы написали: у меня был Jackcess2.java, затем я выполнил компиляцию этой командой: javac Jackcess2.java, а затем я хотел запустить приложение с помощью команды: java Jackcess2, но у меня есть это сообщение: Ошибка : Не удалось найти или загрузить основной класс Jackcess2.java.   -  person danski88    schedule 24.01.2017
comment
Дубликат: Что означает «Не удалось найти или загрузить основной класс”?   -  person Mark Rotteveel    schedule 08.06.2019
comment
Кроме того, проблемы, с которыми вы столкнулись изначально, указывают на то, что, возможно, вам следует сначала ознакомиться с основами Java, прежде чем пытаться погрузиться в использование такой библиотеки, как Jackcess.   -  person Mark Rotteveel    schedule 08.06.2019