我有一组使用Message bundle的类和(struts)jsp文件。我想找到未在project中使用的属性。一种简单的方法是搜索每个属性(在给定的项目中),如果为0,则删除它。
在eclipse中有一个像
这样的函数来源>查找破坏的外部化字符串
我觉得它不起作用。不知道它的用途。我收到消息
“没有nls属性文件,在选择中找到了相应的类访问者”
答案 0 :(得分:0)
似乎Eclipse希望在“Externalize Strings ...”命令中找到它生成的类:
package com.foo.bar;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
public class Messages {
private static final String BUNDLE_NAME = "com.foo.bar.messages"; //$NON-NLS-1$
private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
private Messages() {
}
public static String getString(String key) {
try {
return RESOURCE_BUNDLE.getString(key);
} catch (MissingResourceException e) {
return '!' + key + '!';
}
}
}
实际上,在深入挖掘之后,我发现Eclipse确实需要以下内容:
private static final String BUNDLE_NAME = "com.foo.bar.messages"; //$NON-NLS-1$
public static String getString(String key) {
...
}
包“com.foo.bar”必须包含文件“messages.properties”。您可以在添加这些行的任何源文件(或包)上运行“Find Broken Externalized Strings”。