2010-06-17 13 views
9

Ich bin auf der Suche nach einem Tool, Ant-Task, IDE-Plugin, ..., die mit I18N einer Java-Anwendung mit den Standard-Message-Eigenschaften Ressourcenbündel hilft. Sowohl Open-Source-und kommerzielle Lösungen sind willkommen.Tool zum Überprüfen von Java-Ressourcen-Bundles (i18n)

Insbesondere bei folgenden Aufgaben für die Unterstützung Ich suche:

1) die verwendeten Schlüssel von Java-Code, JSPs und andere Artefakte extrahieren. Da benutzerdefinierte Frameworks beteiligt sind, sollte die Extraktion Anpassung ermöglichen.

Zuordnung des Quellartefakts zu einem bestimmten Nachrichtenpaket. Auch mit benutzerdefinierten Regeln.

Bericht verwendete Schlüssel, die nicht im Bündel sind. Melden Sie Schlüssel, die sich im Bündel befinden, aber in keinem der Quellartefakte, die diesem Bündel zugeordnet sind.

2) Überprüfen Sie die Eigenschaftendateien jedes Bundles und melden Sie fehlende Schlüsseldefinitionen sowie Standardübersetzungen (verwendet den englischen Text).

3) Vergleichen Sie die aktuelle SVN/CVS/GIT/was auch immer Version mit einer alten Version und berichten Fälle, in denen eine Übersetzung (oder vielleicht nur die Standard-one) geändert, aber nicht die andere Übersetzung.

http://rscbundlecheck.sourceforge.net/ deckt 2) zu einem großen Teil. Ich habe jedoch nichts für 1) und 3) gefunden. Irgendwelche Zeiger?

+0

Haben Sie Glück, eine Lösung zu finden? –

Antwort

1

Bericht verwendete Schlüssel, die nicht im Bündel enthalten sind. Meldet Schlüssel, die sich im Bündel befinden, aber keine der Quellartefakte, die diesem Bündel zugeordnet sind.

Sie wissen, ist dies ein ganz untypisch und ich bezweifle, jeder Rahmen würde es gehören, da es Code erfordert die Analyse und Bestimmung, die Bündel von Ressourcen werden Anrufe, die als Argumente übergeben dynamische Strings sein können usw.

Normalerweise werden die Bündel mit dem dedizierten Editor fg bearbeitet ResourceBundle Plugin für Eclipse, in dem Sie das Original und die Übersetzung simultan bearbeiten, und Sie sehen Warnungen für jeden Schlüssel, die nicht in allen Übersetzungen vorhanden sind.

1

1) Extrahieren Sie die verwendeten Schlüssel aus Java-Code, JSPs und anderen Artefakten. Da benutzerdefinierte Frameworks beteiligt sind, sollte die Extraktion Anpassung ermöglichen.

Zuordnung des Quellartefakts zu einem bestimmten Nachrichtenpaket. Auch mit benutzerdefinierten Regeln.

Ich habe auch die gleichen Probleme konfrontiert und begann mit der Entwicklung einer neuen Lösung. Ich gerade posted es heute in meinem Blog. Es verwendet nur das Java Annotation Processor Tool, um Eigenschaftendateien und Schlüssel zu erstellen (oder nur zu aktualisieren). Es ist auch erweiterbar, wie in der Post beschrieben. Und es ist in meinem GitHub-Projekt verfügbar (Sie müssen den Link von meinem Blog finden, da ich nicht mehr als 2 Links posten kann).

Fühlen Sie sich frei, es zu benutzen und zu fragen, was Sie brauchen.


2) Überprüfen Sie die Eigenschaftsdateien jedes Bündels und Berichtsschlüssel Definitionen fehlen und auch Standard-Übersetzungen (verwendet den englischen Text).

Ich habe auch gefunden this solution (habe es noch nicht versucht), und es klingt vielversprechend!


Hoffe es hilft!

0

Ich habe die Message Compiler für diesen Zweck implementiert, die die Ressourcen Bundle-Dateien und konstante Definitionen als Java enum für die Schlüssel aus einer einzigen Quelldatei erstellt. So können die Konstanten in der Java source code verwendet werden, die eine viel sicherere Methode ist. Der Nachrichtencompiler kann nicht nur für Java verwendet werden. Es erstellt auch Ressourcendateien und Konstanten für Objective-C or Swift und kann für andere Programmierumgebungen erweitert werden.

Verwandte Themen