nls如何避免java项目上不需要的日志消息?
在我的java项目中,我在一个messages.properties
文件中外部化了一堆字符串。在其各自的Messages.java
文件中,我拥有相同数量的公共静态字符串类型属性,因此我可以访问这些外部化文本
然后,我实现了一个名为getString
的方法,它接收常量的名称作为参数,并返回所需的文本。这样,就不需要在Messages.java
文件中声明所有公共静态字符串类型的属性
但这样做之后,我的日志中充满了“NLS unused message”消息
你知道有没有办法防止这些警告信息被记录下来吗
提前谢谢
# 1 楼答案
你的
Messages
类——听起来像是扩展了org.eclipse.osgi.util.NLS
如果是这种情况,其设计旨在满足以下要求:
也就是说,NLS用在消息中找到的
staticVariable
的值填充Message.staticVariable
的值。财产警告日志记录提供了有关
Messages.java
和messages.properties
文件不匹配的信息你的
getString()
方法听起来好像没有使用NLS的任何优点,所以正如其他人所建议的,你最好使用ResourceBundle