我正在尝试在简单的 java 服务器端应用程序中使用 ObjectBox。
一切工作正常,我将东西放入盒子等中,但是当我使用 MyObjectBox 类时它始终是红色的。
我可以在 build/classes/main/db 中看到生成的 .class 和 .java 文件以及 meta _ 类(db 是我在实际代码中的包名称),但由于某种原因我可以不导入 MyObjectBox。
因此,我也无法导入 _ 类以在查询中使用,这现在有点阻止我进一步进行。
我使用 objectBox 的代码位于一个名为 DB 的类中,我在下面复制了该类,以防万一我做错了什么。
但是当它实际上起作用时,我很困惑!
谢谢
更新:如果我运行 gradle clean build,我的应用程序运行正常,如果我在 intelliJ 中运行 Build->Build Project,则会收到错误
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);
}
}
最佳答案
忘记apply plugin: 'net.ltgt.apt-idea'
在build.gradle中
关于java - MyObjectBox 为红色/未找到,但 Java 应用程序仍然有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53051032/