我正在尝试使用JLibs I18N库。对于依赖性,我已将JAR文件(i18n
和i18n-apt
)添加到Eclipse Build Path:
接下来,我仅使用网站上发布的示例源代码。
import jlibs.core.util.i18n.I18N;
import jlibs.core.util.i18n.Message;
import jlibs.core.util.i18n.ResourceBundle;
@ResourceBundle
public interface DBBundle{
public static final DBBundle DB_BUNDLE = I18N.getImplementation(DBBundle.class);
@Message("SQL Execution completed in {0} seconds with {1} errors")
public String executionFinished(long seconds, int errorCount);
@Message(key="SQLExecutionException", value="Encountered an exception while executing the following statement:\n{0}")
public String executionException(String query);
@Message("executing {0}")
public String executing(String query);
}
到目前为止,我还没有收到任何编译器错误,这很棒。
在本教程中继续说
使用classpath中的jlibs-core.jar编译此接口时,它将生成包含消息的Bundle.properties。
因此,我还将
jlibs-core
放入Eclipse的类路径中(请参见上面的屏幕截图)并执行了重建。不幸的是,没有创建Bundle.properties文件,我使用Search Everything进行了检查:每个文件都来自May或更早的版本:我还需要什么来使Jlibs编译I18N接口?
最佳答案
您可能必须在Eclipse中启用注释处理。请参见instructions here。
将jlibs-i18-apt
,jlibs-apt
和jlibs-core
添加到工厂路径,然后尝试。
如果您对Maven感到满意,则可以下载sample maven project。编译时,您可以在target / classes文件夹中看到生成的文件。