我正在做一个涉及加载 ResourceBundle 的项目。更明确地说,我创建了一个扩展 ListResourceBundle 的类。该类称为 Resources.java。它编译得很好,一切正常,但是每次我尝试加载类时,MissingResourceException 都会不断弹出:
我所有的源文件都在包 chapter31 中。在字符串中使用或不使用“chapter31”进行此调用时,始终会导致 MissingResourceException。我的 IDE 是 Eclipse。这两天我一直在玩这个问题。我什至尝试更改 Eclipse 的版本。我已经走到尽头了。在 Eclipse 中我可以做些什么来确保 getBundle() 方法可以看到该类。我不知道它怎么会错过它。它在同一个包中!请指教。
阿利卡斯
package chapter31;
import java.applet.Applet;
import java.applet.AudioClip;
import java.util.ListResourceBundle;
import java.util.ResourceBundle;
import javax.swing.ImageIcon;
public class Resources extends ListResourceBundle {
Object contents[][];
public Resources() {
AudioClip clip = Applet.newAudioClip(getClass().getResource("/E31_10/audio/us.mid"));
ImageIcon image = new ImageIcon(getClass().getResource("/E31_10/image/us.gif"));
contents = new Object[3][2];
contents[0] = new Object[] {"clip", clip};
contents[1] = new Object[] {"icon", image};
contents[3] = new Object[] {"delay", new Integer(68000)};
}
protected Object[][] getContents() {
return contents;
}
public static void main(String[] args) {
ResourceBundle res = ResourceBundle.getBundle("chapter31.Resources");
}
}