eclipse中形如$NON-NLS-1$注释的含义
来源:互联网 发布:红包系统源码 编辑:程序博客网 时间:2024/04/29 15:09
刚刚接触eclipse时,经常在官方的例子中看到一些奇怪的注释,例如:shell.setText(Messages.getString("TestRef.hello")); //$NON-NLS-1$
这$NON-NLS-1$到底代表什么呢?当时在一阵浅尝辄止之后,也就忽略了这个问题,今天在阅读Rich Client Tutorial Part 2时,意外的发现了这行注释的真实含义……
^_^真是意外中的收获。
这实际与eclipse中支持i18n的一种方式,eclipse的标准结构,将所有string常量定义到.properties中,例如上面程序段中的TestRef.hello实际上是.properties中的一个key TestRef.hello=Hello
现在大家也许对注释$NON-NLS-1$的含义就能够猜到个大概了,我个人猜测他也许就是non need localize string 1的缩写。rcp的文档里是这样表述的The string $NON-NLS-1$
is a hint for both the compiler and the Externalization wizard that the first character string on this line is a tag or keyword of some sort and should not be localized. 也就是说$NON-NLS-1$表明本行的第一个string型变量是一个标签或者关键字,不需要被本地化
TestRef.java
public class TestRef {
public static void main(String[] args) {
Shell shell =new Shell();
shell.setText(Messages.getString("TestRef.hello")); //$NON-NLS-1$
}
Messages.java
public class Messages {
private static final String BUNDLE_NAME = "test";//$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 + '!';
}
}
}
test.properties
TestRef.hello=Hello
- eclipse中形如$NON-NLS-1$注释的含义
- eclipse中形如$NON-NLS-1$注释的含义
- eclipse中形如$NON-NLS-1$注释的含义
- Eclipse中字符串后面的//$NON-NLS-1$作用
- 【我的Android进阶之旅】Android 源代码中的Java代码中//$NON-NLS-1$ 注释是什么意思?
- Eclipse报错之://$NON-NLS$
- What does $NON-NLS-1$ mean?
- 第十六周实验--任务4--读WolfSheep.nls,去除其中所有的注释,并保存到文件WS_nocomment.nls 中
- Oracle的NLS设置
- NLS 视图的研究
- Oracle的NLS设置
- 第十六周C++【任务四】要求编写C++程序,读WolfSheep.nls,去除其中所有的注释,并保存到文件WS_nocomment.nls 中
- NLS
- nls
- 使用org.eclipse.osgi.util.NLS进行插件国际化的例子
- eclipse的注释模板
- NLS需要采购的东西
- eclipse中图标的含义
- snoopy
- flex 界面体验
- 通过IP查计算机名
- 中国idc骨干网络介绍,8大节点城市分布
- 一个背包算法的源代码
- eclipse中形如$NON-NLS-1$注释的含义
- MATLAB生成COM步骤
- 如何让你的网站排名靠前
- 【Android学习笔记】AutoCompleteTextView(数组在代码中)
- 写在前面
- 无主之地主题曲《Ain't No Rest For The Wicked》
- Microsoft Platform SDK Febrary 2003下载(更新VC6的SDK)
- 虚拟化公司Appsense获高盛七千万美元投资
- 半透明广告部分js代码(支持ie和火狐)