2012-02-23 11 views
6

W zeszłym tygodniu mam bardzo przygnębiony, mam trzy duże aplikacje w produkcji i wiele więcej przy użyciu Swing Application Framework. Później, kiedy zacząłem migrować do Netbeans 7.1, BOOM !, nie ma już wsparcia dla SAF.Netbeans 7.1 usunął wsparcie dla Swing Application Framework? Jak mogę przeprowadzić migrację z wersji 7.0 do wersji 7.1?

Co mogę zrobić, pomysły na migrację do Netbeans 7.1?

Doceniam twoją pomoc.

PS: Zespół Netbeans, proszę nie dodawać struktur bez ostrzeżenia, które są tylko Żądaniem specyfikacji Java - JSR. Kiedy zacząłem używać SAF, wygląda na to, że nigdy się nie wycofa.

PS2: aby nas usłyszeć używamy SAF, zagłosuj na https://netbeans.org/bugzilla/show_bug.cgi?id=204661

+1

praca jest kontynuowana w BSAf (lepiej-swing-application-framework), jest to projekt na kenai (nie wiem jednak o łatwości ponownego zintegrowania go z Netbeans). – kleopatra

+0

Wygląda na to, że robią to zachęca/popycha użytkowników do przejścia na bogatą platformę JavaFX 2.0. Jak dotąd wsparcie dla JavaFX 2.0 jeszcze nie nadąża za tempem i jest jeszcze na wczesnym etapie. – sttaq

Odpowiedz

2

nie mam dobrej odpowiedzi, ale może to dać innym ludziom więcej pomysłów (i byłoby bardziej przydatne do włączenia informacji tutaj, niż zamieścić osobne pytanie) ...

Mam również aplikację SAF, która wymaga teraz java 1.7, więc przełączyłem się na netbeans 7.1 i nie mogę edytować formularzy w nb7.0. Przełączam się pomiędzy nb7.0, aby edytować ekrany, a następnie używam nb7.1 do kompilacji i uruchamiania.

Jeśli utworzę formularz w nb7.1, działa dobrze z moją aplikacją i przyjrzałem się wygenerowanemu kodowi oraz plikom .properties nb7.0 i nb7.1 utworzyć dla, powiedzmy, JPanel, wyglądają identycznie.

Nie wymyśliłem, jak "przekonwertować" JPB z generatora nb7.0 na te, które działają z nb7.1, ale mogę utworzyć pusty JPanel w wersji 7.1, a następnie uruchomić 7.0 i skopiować wszystkie kontrolki z formularz 7.0 do formularza 7.1. Ikony się gubią - błąd NetBeans, a kod zostaje utracony, generalnie kosztowny i podatny na błędy proces.

Gdzieś w projekcie może znajdować się flaga informująca, czy JPanel to "SAF", czy nie. Jeśli tak, znalezienie go znacznie ułatwiłoby migrację.

+0

Dodano pewne wtyczki, które mogą pomóc, zobacz https://netbeans.org/bugzilla/show_bug.cgi?id=204661#c59 – Mary

1

udało mi się otwarcie formularza SAF w Netbeans 7.2. po użyciu niektórych porad z forum: http://forums.netbeans.org/topic43775-0-asc-30.html:

  1. usunąć komentarze // <editor-fold defaultstate="collapsed" desc="Generated Code"> arround initComponents() w kodzie swojej postaci
  2. Pozbądź się wszystkich @Action adnotacji - zamiast używać componentObject .addActionListener() lub podobne
  3. Pozbądź się wszystkich org.jdesktop.application i ... getActionMap()
  4. Z pliku .form usuń wszystkie tagi zaczynające się od <Property name="action" type="javax.swing.Action".

Nie gwarantuję, że w twoim przypadku sprawi to, że formularz będzie działał w 100%, ale dla mnie zadziałało - mój formularz mógł zostać otwarty w Netbeans 7.2.

Jeśli Netbeans wyświetli ci jakieś błędy lub ostrzeżenia, przeczytaj te wiadomości i spróbuj dowiedzieć się, co jest nie tak - może np. Usunięto za dużo.

1

Instrukcje od faceta, któremu udało się przenieść formularz SAF do Netbeans 7.2, dały mi początek. W Netbeans jest coś więcej niż tylko portowanie 7.3.Polecam zacząć od prostego formularza, w którym nic nie zostało utworzone w Netbeans 6.9, następnie utwórz ten sam formularz w wersji 7.3 i porównaj wygenerowany kod .java i .form. To pokazuje wszystkie różnice, które muszą dotyczyć przeniesienia formularza. Po uzyskaniu prostego formularza, spróbuj zrobić to samo, dodając przykład rodzajów komponentów, których używasz, takich jak panele, przyciski, pola wyboru itp. Ponownie porównuj plik, aby zobaczyć, jak każdy typ komponentu jest inny. Każdy typ komponentu w formularzach SAF zawiera pewien rodzaj abstrakcji zasobów tekstowych związanych z linią w pliku właściwości dla klasy i musisz przerwać ten link i po prostu wstawić rzeczywistą wartość do formularza Netbeans 7.3. Jeśli pominiesz parametr związany z jednym zasobem w formularzu, otrzymasz ten sam komunikat o błędzie, dopóki nie naprawisz wszystkiego. Udało mi się przejść przez to ćwiczenie dla niezwykle złożonej ramy i zajęło mi kilka solidnych dni, częściowo ucząc się krzywej. Jeszcze tylko 15 ramek do wykonania jest dość skomplikowanych, ale nie tak bardzo, jak główny widok, który zrobiłem pierwszy.

Powiązane problemy