Java 引用库项目并获取NoClassDefFoundError
我以前见过这个问题的不同版本,但似乎没有一个能对我做出准确的解释。我目前正在与Android工作室合作开发一个Android项目 在我的主项目中有一个方法,我尝试在其中实例化DatePickerBuilder对象,该类在我的库项目中定义Java 引用库项目并获取NoClassDefFoundError,java,android,noclassdeffounderror,library-project,Java,Android,Noclassdeffounderror,Library Project,我以前见过这个问题的不同版本,但似乎没有一个能对我做出准确的解释。我目前正在与Android工作室合作开发一个Android项目 在我的主项目中有一个方法,我尝试在其中实例化DatePickerBuilder对象,该类在我的库项目中定义 private OnFocusChangeListener openCalendarDialogFocus = new OnFocusChangeListener() { @Override public void onFocusChange(V
private OnFocusChangeListener openCalendarDialogFocus = new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
int resID = com.doomonafireball.betterpickers.R.style.BetterPickersDialogFragment_Light;
// Here I get the "java.lang.NoClassDefFoundError: com.doomonafireball.betterpickers.datepicker.DatePickerBuilder" error
// adding com.doomonafireball.betterpickers.datepicker.DatePickerBuilder
// to the front of my DatePickerBuilder object does not have any effect
DatePickerBuilder dpb = new DatePickerBuilder()
.setFragmentManager(getSupportFragmentManager())
.setStyleResId(resID);
dpb.show();
}
}
};
我相信我已经正确地添加了这个库,它不是一个jar文件,所以它是作为另一个项目添加的。我想知道为什么从库中找不到这个类,但是上面这行的引用没有问题。
事实上,在应用程序运行之前,logcat说
Could not find class 'com.doomonafireball.betterpickers.datepicker.DatePickerBuilder', referenced from method
这看起来很奇怪,因为^是这个类的确切路径,尽管它没有在方法中声明
在我班的最顶端,我还有import语句
import com.doomonafireball.betterpickers.datepicker.DatePickerBuilder;
但上面写着“未使用的进口声明”
我觉得我错过了什么,但我很接近,任何建议将非常感谢 格雷德尔,你能帮我贴一下吗?