sobota, 29 listopada 2008

Polska platforma NetBeans jeszcze raz czyli problemy z lokalizacją

We wpisie opisałem pojawienie się polskiego tłumaczenia platformy. Wszystko było pięknie tak jak to opisałem do momentu aż nie spróbowałem zrobić wersji dystrybucyjnej aplikacji zbudowanej na polskiej platformie (Build ZIP Distribution). Po rozpakowaniu zipa i uruchomieniu aplikacji okazało się, że polskie menu gdzieś zniknęło. Jak się okazało jest za to odpowiedzialny błąd znany już we wcześniejszej wersji NetBeans'a. Błąd ten dotyczy wszystkich tłumaczeń platformy.
Pozostały mi więc dwie możliwości: albo przy każdym budowaniu aplikacji kopiować pliki z potrzebnymi tłumaczeniami albo napisać zadanie anta które uzupełni zipa za mnie. Wybrałem opcję drugą i okazało się, że zadanie to nie jest tak trudne jak mi się na początku wydawało. W tym celu do pliku build.xml odpowiedzialnego za zadania anta związane z naszym projektem dodałem zadanie "build-localized-zip". Zadanie to dodaje do pliku archiwum (stworzonego w zadaniu build-zip - opis tego zadania znajduje się w pliku harness/suite.xml w katalogu platformy, na której budujemy aplikację) pliki z polskimi tłumaczeniami. Minusem tego rozwiązania jest to, że zostaną dodane wszystkie "polskie" pliki a nie tylko z tych modułów, które wykorzystujemy. Biorąc pod uwagę, że na dzień dzisiejszy przetłumaczona jest tylko część modułów platformy nie powinno to stanowić problemu.


<project name="TestPlatform" basedir="."><br />
    <description>Builds the module suite TestPlatform.</description>
<import file="nbproject/build-impl.xml"/>
<target name="build-localized-zip" depends="clean,build-zip"
description="Zbudowanie polskiej dystrybucji">
        <zip destfile="${dist.dir}/${app.name}.zip" update="true">
            <zipfileset dir="${netbeans.dest.dir}" prefix="${app.name}">
                <include name="**/locale/*_pl.jar"/>
            </zipfileset>
        </zip>
   </target>

</project>


Teraz wystarczy uruchomić nasze nowe zadanie i nowa dystrybucja naszej aplikacji będzie już "uzbrojona" w polskie menu.



Brak komentarzy: