只是可以捕捉到错误,即
try {
numericDefinition = new net.sf.cb2xml.def.BasicNumericDefinition(
binName, binarySizes, SynchronizeAt, usePositive, floatSynchronize, doubleSynchronize
);
} catch (NoClassDefFoundError e) {
System.out.println("Class Not Found: " + e.getMessage());
}
不过,您确实需要非常小心您的编码,在类初始化时很容易抛出NoClassDefFoundError而不会进入 try .. catch 块。
NoClassDefFoundError将在第一次引用一个类时抛出,这可能是当一个类使用一个使用一个类的类时,该类使用一个类......它使用一个引用不存在的类的类。
由于导入,以下可能会在类初始化时因NoClassDefFoundError而失败。
import net.sf.cb2xml.def.BasicNumericDefinition; // could cause the NoClassDefFoundError
...........
try {
numericDefinition = new BasicNumericDefinition(
binName, binarySizes, SynchronizeAt, usePositive, floatSynchronize, doubleSynchronize
);
} catch (NoClassDefFoundError e) {
System.out.println("Class Not Found: " + e.getMessage());
}