【发布时间】:2015-03-02 21:42:04
【问题描述】:
当尝试获取 Realm 实例时,我遇到了以下异常 -
io.realm.exceptions.RealmException: Could not find the generated io.realm.HallOfFameHolderRealmProxy class: Annotation processor may not have been executed.
我的班级代码是 -
@RealmClass
公共类 HallOfFameHolder 扩展 RealmObject {
private static final String TAG = "HallOfFameHolder";
private int mId;
private String mTrackName;
private Date mDateTime;
private String mTimeStr;
private String mDateStr;
private long mTotalRunTime;
private String mTotalRunTimeStr;
private int mNumOfLaps;
private long mBestLapTime;
private String mBestLapTimeStr;
private boolean mDryTrack;
private float mGearRatio;
private int mSrJetting;
@Ignore
private int mSessionId;
public void setData(String trackName, Date dateTime, String timeStr,
String dateStr, long totalRunTime, String totalRunTimeStr,
int numOfLaps, long bestLapTime, String bestLapTimeStr,
boolean dryTrack, float gearRatio, int srJetting) {
Log.d(TAG, "setData");
mTrackName = trackName;
mDateTime = dateTime;
mTimeStr = timeStr;
mDateStr = dateStr;
mTotalRunTime = totalRunTime;
mTotalRunTimeStr = totalRunTimeStr;
mNumOfLaps = numOfLaps;
mBestLapTime = bestLapTime;
mBestLapTimeStr = bestLapTimeStr;
mDryTrack = dryTrack;
mGearRatio = gearRatio;
mSrJetting = srJetting;
}
public void setData(int id, String trackName, Date dateTime,
String timeStr, String dateStr, long totalRunTime,
String totalRunTimeStr, int numOfLaps, long bestLapTime,
String bestLapTimeStr, boolean dryTrack, float gearRatio,
int srJetting) {
Log.d(TAG, "setData");
mTrackName = trackName;
mDateTime = dateTime;
mTimeStr = timeStr;
mDateStr = dateStr;
mTotalRunTime = totalRunTime;
mTotalRunTimeStr = totalRunTimeStr;
mNumOfLaps = numOfLaps;
mBestLapTime = bestLapTime;
mBestLapTimeStr = bestLapTimeStr;
mDryTrack = dryTrack;
mGearRatio = gearRatio;
mSrJetting = srJetting;
mId = id;
}
public int getmId() {
return mId;
}
public void setmId(int mId) {
this.mId = mId;
}
public String getmTrackName() {
return mTrackName;
}
public void setmTrackName(String mTrackName) {
this.mTrackName = mTrackName;
}
public Date getmDateTime() {
return mDateTime;
}
public void setmDateTime(Date mDateTime) {
this.mDateTime = mDateTime;
}
public String getmTimeStr() {
return mTimeStr;
}
public void setmTimeStr(String mTimeStr) {
this.mTimeStr = mTimeStr;
}
public String getmDateStr() {
return mDateStr;
}
public void setmDateStr(String mDateStr) {
this.mDateStr = mDateStr;
}
public long getmTotalRunTime() {
return mTotalRunTime;
}
public void setmTotalRunTime(long mTotalRunTime) {
this.mTotalRunTime = mTotalRunTime;
}
public String getmTotalRunTimeStr() {
return mTotalRunTimeStr;
}
public void setmTotalRunTimeStr(String mTotalRunTimeStr) {
this.mTotalRunTimeStr = mTotalRunTimeStr;
}
public int getmNumOfLaps() {
return mNumOfLaps;
}
public void setmNumOfLaps(int mNumOfLaps) {
this.mNumOfLaps = mNumOfLaps;
}
public long getmBestLapTime() {
return mBestLapTime;
}
public void setmBestLapTime(long mBestLapTime) {
this.mBestLapTime = mBestLapTime;
}
public String getmBestLapTimeStr() {
return mBestLapTimeStr;
}
public void setmBestLapTimeStr(String mBestLapTimeStr) {
this.mBestLapTimeStr = mBestLapTimeStr;
}
public boolean ismDryTrack() {
return mDryTrack;
}
public void setmDryTrack(boolean mDryTrack) {
this.mDryTrack = mDryTrack;
}
public float getmGearRatio() {
return mGearRatio;
}
public void setmGearRatio(float mGearRatio) {
this.mGearRatio = mGearRatio;
}
public int getmSrJetting() {
return mSrJetting;
}
public void setmSrJetting(int mSrJetting) {
this.mSrJetting = mSrJetting;
}
// DO NOT Delete the next 2 methods
public int getmSessionId() {
return mSessionId;
}
public void setmSessionId(int sessionId) {
mSessionId = sessionId;
}
}
我正在使用 Eclipse 和 realm-0.78.0.jar。 如何解决?
【问题讨论】:
-
你使用的是什么版本的JVM?将@RealmClass 注解添加到模型类有帮助吗?
-
我正在使用:java 版本“1.8.0_31”Java(TM) SE 运行时环境(构建 1.8.0_31-b13)Java HotSpot(TM) 64 位服务器 VM(构建 25.31-b07,混合模式)并使用 - @RealmClass public class HallOfFameHolder extends RealmObject {
-
您的 setData 方法应该使注释处理器失败。你有构建过程的日志吗?
-
setData(...) 方法应该有什么注解?
-
setter 不应该有任何数据,但是如果有任何 setter 不与字段关联,则注释处理器应该会失败。
标签: android eclipse exception annotations realm