Рассматривали ли вы HSQLDB ? Вполне может быть быстрее заставить HSQLDB работать, чем понять, как это сделать с помощью sqlite. Я знаю, что вы сказали, что это только для чтения, но, очевидно, это не тот способ, которым вы настраивали sqlite.
Другой вариант - сохранить дамп базы данных sqlite
sqlite3 .dump
в вашем jar-файле, читая его при запуске из пути к классам через getResourceAsStream () и создавая базу данных при запуске приложения. очевидно, это добавляет накладные расходы при запуске и не является идеальным, но может работать в крайнем случае.
edit: только что нашел код для фактического создания БД программно здесь . в зависимости от размера вашей базы данных, сохранение SQL (сжатого при необходимости) и создание БД при запуске может быть не таким уж ужасным.