在eclipse中找到未使用的属性

时间:2011-09-13 11:19:36

标签: java eclipse properties resourcebundle

我有一组使用Message bundle的类和(struts)jsp文件。我想找到未在project中使用的属性。一种简单的方法是搜索每个属性(在给定的项目中),如果为0,则删除它。

在eclipse中有一个像

这样的函数

来源>查找破坏的外部化字符串

我觉得它不起作用。不知道它的用途。我收到消息

“没有nls属性文件,在选择中找到了相应的类访问者”

1 个答案:

答案 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”。