Im Eclipse-Quellcode habe ich in solchen Kommentaren einige '$ NON-NLS-1 $' gefunden:
private String toolTip = ""; //$NON-NLS-1$
Was bedeutet das ?
quelle
Im Eclipse-Quellcode habe ich in solchen Kommentaren einige '$ NON-NLS-1 $' gefunden:
private String toolTip = ""; //$NON-NLS-1$
Was bedeutet das ?
Sie bringen eine Warnung zum Schweigen, die Eclipse ausgibt, wenn es auf String-Literale stößt (und so konfiguriert wurde, dass sie sich beschwert).
Die Idee ist, dass UI-Nachrichten nicht als String-Literale eingebettet werden sollten, sondern aus einer Ressourcendatei stammen (damit sie übersetzt, geprüft usw. werden können). Folglich kann Eclipse so konfiguriert werden, dass Zeichenfolgenliterale erkannt werden, sodass Sie nicht versehentlich nicht externalisierte UI-Zeichenfolgen im Code belassen. Es gibt jedoch Zeichenfolgen, die nicht externalisiert werden sollten (z. B. reguläre Ausdrücke). // $ NON-NLS-1 $ bietet Ihnen daher die Möglichkeit, diese Tatsache dem Compiler mitzuteilen.
Die Zeichenfolge ist nicht übersetzbar. Der Eclipse-Editor wird angewiesen, die Zeichenfolge nicht als nicht mit Ressourcen versehen zu kennzeichnen. Dies ist wichtig für mehrsprachige Anwendungen.
quelle
NON-NLS
Mittel Non - N ational L anguage S upport .Wikipedia schlägt auch nicht - N tive L anguage S upport (NLS) , aber das letzte ist nicht sehr verwendet.
Bei NLS geht es darum, Ihre Bewerbung zu internationalisieren. Eclipse hilft dabei, fest codierte Zeichenfolgen in Ihrem Code zu finden. Um anzuzeigen, dass eine Zeichenfolge nicht Teil der Internationalisierung ist, fügen Sie den Kommentar hinzu,
//$NON-NLS-x$
wobei x die Position der Zeichenfolge ist. Im folgenden Beispiel handelt es sich bei beiden"!"
um fest codierte Zeichenfolgen, die nicht Teil der Internationalisierung sind:Anmerkungen:
//
ist jedes Mal notwendig$NON-NLS$
für mehrere Zeichenfolgen innerhalb derselben Zeile(z. B. wenn Ihre Zeile sechs Zeichenfolgen enthält, müssen Sie sechs Mal schreiben
//$NON-NLS-x$
).Das Buch EMF: Eclipse Modeling Framework auf Seite 250 lautet:
Weitere Informationen finden Sie auch auf den Seiten Die Generator-Benutzeroberfläche und Informationen zur Internationalisierung Ihres Eclipse-Plug-Ins .
Sie können diese Funktion aktivieren / deaktivieren. Gehen Sie in Eclipse Neon zu
Project > Properties > Java Compiler > Errors/Warnings
und wählen Sie das Feld aus
Non-externalized strings (missing/unused $NON-NLS$ tag)
quelle
Wenn Sie ein Android-Entwickler sind. Alle Zeichenfolgen, die der Benutzer möglicherweise sieht, sollten sich in der Ressourcendatei /res/values/strings.xml befinden, um die Datei strings.xml in dem von Ihnen verwendeten Code R.string zu lesen. Durch Hinzufügen des Tags // $ NON-NLS- $ sind Sie Beachten Sie, dass die Zeichenfolge von Benutzern nicht gesehen wird.
Die Warnung in Eclipse Helios kann unter aktiviert sein
Window -> preferences -> java -> Compiler -> code style -> "Non-externalized Strings (missing/unused &NON-NLS$ tag)
.Wenn Sie planen, Ihre Aktivität mehrsprachig zu programmieren, wird empfohlen, diese Option zu aktivieren. Fügen Sie dann das & NON-NLS $ -Tag zu Zeichenfolgen hinzu, die für Ihre Aktivität intern sind. Eclipse fügt der Schnellkorrektur das Tag & NON-NLS $ hinzu, wenn Sie mit der rechten Maustaste auf die Warnung oder den Fehler klicken.
quelle
Es wird von Eclipse verwendet, um anzuzeigen, dass eine Zeichenfolge nicht übersetzt werden muss, wahrscheinlich weil sie von den Benutzern der Anwendung nicht gesehen wird.
quelle
Es weist den Compiler an, sich nicht über eine nicht externalisierte Zeichenfolge zu beschweren, und dass keine Lokalisierung erforderlich ist.
quelle