В исходном коде Eclipse я нашел в комментариях «$ NON-NLS-1 $»:
private String toolTip = ""; //$NON-NLS-1$
Что это значит ?
источник
В исходном коде Eclipse я нашел в комментариях «$ NON-NLS-1 $»:
private String toolTip = ""; //$NON-NLS-1$
Что это значит ?
Они заставляют замолчать предупреждение, которое Eclipse выдает, когда встречает строковые литералы (и было настроено жаловаться).
Идея состоит в том, что сообщения пользовательского интерфейса не должны быть встроены в виде строковых литералов, а должны быть получены из файла ресурсов (чтобы их можно было переводить, проверять и т. Д.). Следовательно, Eclipse может быть настроен на обнаружение строковых литералов, чтобы вы случайно не оставили в коде неинтернализованные строки пользовательского интерфейса; однако есть строки, которые не должны быть выведены из внешнего вида (например, регулярные выражения), поэтому // $ NON-NLS-1 $ дает возможность сообщить об этом факте компилятору.
Строка не переводима. Он говорит редактору Eclipse не отмечать строку как не имеющую ресурсов. Это важно для многоязычных приложений.
источник
NON-NLS
средство Номер - N АЦИОНАЛЬНОГО L anguage S оддержка .Википедия предлагает также Non - N ческих L anguage S оддержки (NLS) , но этот последний не очень используются.
NLS - это интернационализация вашего приложения. Eclipse поможет найти жестко запрограммированные строки в вашем коде. Чтобы указать, что строка не является частью интернационализации, добавьте комментарий,
//$NON-NLS-x$
где x - это позиция строки. В следующем примере оба"!"
являются жестко закодированными строками, не являющимися частью интернационализации:Ноты:
//
необходим каждый раз$NON-NLS$
для нескольких строк в одной строке(например, если в вашей строке шесть строк, вы должны написать шесть раз
//$NON-NLS-x$
)Книга EMF: Eclipse Modeling Framework на странице 250 гласит:
Для получения дополнительной информации см. Также страницы «Графический интерфейс генератора» и « Как интернационализировать ваш подключаемый модуль Eclipse» .
Вы можете включить / отключить эту функцию. На Eclipse Neon зайдите
Project > Properties > Java Compiler > Errors/Warnings
и выберите поле
Non-externalized strings (missing/unused $NON-NLS$ tag)
источник
Если вы разработчик Android. Все строки, которые может видеть пользователь, должны находиться в файле ресурсов /res/values/strings.xml для чтения файла strings.xml в коде, который вы используете R.string. Добавив тег // $ NON-NLS- $, вы получите отмечая, что строка не будет видна пользователям.
Предупреждение в Eclipse Helios может быть включено в
Window -> preferences -> java -> Compiler -> code style -> "Non-externalized Strings (missing/unused &NON-NLS$ tag)
.Если вы планируете программировать свою деятельность на несколько языков, рекомендуется включить ее. А затем добавьте тег & NON-NLS $ к строкам, которые являются внутренними для вашей деятельности. Eclipse добавит тег & NON-NLS $ в быстрое исправление, если щелкнуть правой кнопкой мыши предупреждение или ошибку.
источник
Он используется Eclipse для указания того, что строку не нужно переводить, возможно потому, что ее не увидят пользователи приложения.
источник
Он говорит компилятору не жаловаться на неэкстернализованную строку и не требует локализации.
источник