Я пытаюсь использовать ObjectBox в простом приложении на стороне сервера Java.
Все работает нормально, я кладу вещи в коробки и т. Д., Но класс MyObjectBox всегда красный, когда я его использую.
Я могу увидеть сгенерированные файлы .class и .java вместе с мета-классами в build / classes / main / db (db - это имя пакета, которое есть в моем реальном коде), но по какой-то причине я могу не импортировать MyObjectBox.
Из-за этого я также не могу импортировать классы _ для использования в запросах, что теперь как бы мешает мне двигаться дальше.
Мой код для использования objectBox находится внутри класса DB, который я скопировал ниже, на случай, если с этим что-то не так.
Но поскольку это на самом деле работает, я очень запутался !!
Спасибо
ОБНОВЛЕНИЕ: если я запускаю чистую сборку gradle, мое приложение работает нормально, если я запускаю Build-> Build Project в intelliJ, то я получаю ошибку
Error:(27, 21) java: cannot find symbol
symbol: variable MyObjectBox
location: class DB
.
package db;
import java.io.File;
import java.io.IOException;
import io.objectbox.Box;
import io.objectbox.BoxStore;
public class DB {
private File boxStoreDir;
private static BoxStore store;
public DB() {
try {
createMyObjectBox();
} catch (IOException e) {
e.printStackTrace();
}
}
private void createMyObjectBox() throws IOException {
File objectstorefile = new File("../objectBox/objectstorefile");
if(!objectstorefile.isDirectory()) {
objectstorefile.mkdirs();
}
boxStoreDir = objectstorefile;
if(store == null) {
store = MyObjectBox.builder().directory(boxStoreDir).build();
}
}
public<T> Box<T> getBox(Class<T> object) {
if(store == null) {
try {
createMyObjectBox();
} catch (IOException e) {
e.printStackTrace();
}
}
return store.boxFor(object);
}
}