关于资源包错误的问题,我已经阅读了其他关于相同主题的问题,但是并没有得到更多的启示。尝试了不同的方法,但都没有帮助。为了提供一些背景:我开发了一个小应用程序(JDK6),可以自动执行一些平面文件解析和编辑操作。该应用程序首先从属性文件中读取一些数据。
或者甚至更多。
但是当我运行它时,它给了我这个输出:
在Windows中,同样的...
我不知道哪里出了问题 :/
重要提示: 我想能够更改属性文件。我不想将其放入jar文件中。
然而,即使在我尝试创建的小示例应用程序中,基于另一个问题/答案[这里][1]:
package restestapp;
import java.util.Locale;
import java.util.ResourceBundle;
public class ResourceBundleTester
{
public static void main(String[] args)
{
Locale locale = Locale.getDefault();
String basename ="myresource";
ResourceBundle resourceBundle = ResourceBundle.getBundle(basename, locale);
System.out.println(resourceBundle.getString("STARTING_MYAPP"));
}
}
这两个文件在这里:
/home/dakoina/Documents/ResTestapp/ResTestApp.jar
/home/dakoina/Documents/ResTestapp/myresource.properties
或者甚至更多。
c:/temp/ResTestApp.jar
c:/temp/myresource.properties
但是当我运行它时,它给了我这个输出:
dakoina@ubuntu:~/Documents/ResTestapp$ java -cp /home/dakoina/Documents/ResTestapp/ -jar "ResTestApp.jar"
Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name myresource, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1539)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1278)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:805)
at restestapp.ResTestApp.main(ResTestApp.java:19)
在Windows中,同样的...
c:\temp>java -jar ResTestApp.jar
Exception in thread "main" java.util.MissingResourceException: Can't find bundle
for base name myresource, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
at java.util.ResourceBundle.getBundleImpl(Unknown Source)
at java.util.ResourceBundle.getBundle(Unknown Source)
at restestapp.ResTestApp.main(ResTestApp.java:19)
[1]: http://stackoverflow.com/questions/3742158/using-resourcebundle-with-an-external-file-java
我不知道哪里出了问题 :/
restestapp.ResourceBundleTester
,ن¸چوک¯ResTestApp
م€‚ - JB Nizet