Netbeans 7.1 прекратил поддержку Swing Application Framework? Как я могу перенести форму с 7.0 на 7.1? - PullRequest
6 голосов
/ 23 февраля 2012

На прошлой неделе я очень расстроился, у меня в работе три больших приложения и еще много, использующих Swing Application Framework.Позже, когда я начал мигрировать на Netbeans 7.1, BOOM !, больше не поддерживал SAF.

Итак, что я могу сделать, какие-либо идеи, как перейти на Netbeans 7.1?

Буду признателен за вашу помощь.

PS: Команда Netbeans, пожалуйста, не добавляйте фреймворкибез предупреждения, что это просто запрос спецификации Java - JSR.Когда я начал использовать SAF, похоже, что он никогда не будет прекращен.

PS2: Чтобы заставить нас услышать, что мы используем SAF, проголосуйте за https://netbeans.org/bugzilla/show_bug.cgi?id=204661

Ответы [ 4 ]

4 голосов
/ 25 октября 2012

Я нашел SAF как плагин для более новых NetBeans: http://plugins.netbeans.org/plugin/43853/swing-application-framework-support

2 голосов
/ 25 мая 2012

У меня нет хорошего ответа, но это может дать другим людям больше идей (и было бы более полезно включить информацию здесь, чем оставлять отдельный вопрос) ...

Я такжеу меня есть приложение SAF, для которого мне сейчас нужна Java 1.7, поэтому я перешел на netbeans 7.1 и не могу редактировать формы в nb7.0.Я переключаюсь между nb7.0 для редактирования экранов, затем использую nb7.1 для компиляции и запуска.

Если я создаю форму в nb7.1, она хорошо работает с моим приложением, и я посмотрел насгенерированный код и файлы .properties nb7.0 и nb7.1 создают, скажем, для JPanel, они выглядят одинаково.

Я не выяснил, как «преобразовать» сгенерированные nb7.0 JPanelsдля тех, которые работают с nb7.1, но я могу создать пустую JPanel в 7.1, затем запустить 7.0 и скопировать все элементы управления из формы 7.0 в форму 7.1.Значки теряются - ошибка NetBeans, а код теряется, как правило, дорогостоящий и подверженный ошибкам процесс.

Возможно, где-то в проекте есть флаг, который сообщает, является ли JPanel "SAF" илине.Если это так, обнаружение этого значительно облегчит миграцию.

1 голос
/ 27 января 2014

Инструкции от парня, которому удалось перенести форму SAF в Netbeans 7.2, помогли мне начать.Это еще не все, портирование в Netbeans 7.3.Я рекомендую начать с простой формы, в которой ничего не было создано в Netbeans 6.9, затем создать ту же форму в 7.3 и сравнить сгенерированный код .java и .form.Это покажет вам все различия, которые имеют отношение к переносу формы.Как только вы получите простую форму, попробуйте сделать то же самое добавление в примере типов компонентов, которые вы используете, таких как панели с вкладками, кнопки, флажки и т. Д. Еще раз выполните сравнение файлов, чтобы увидеть, как отличается каждый тип компонента.Каждый тип компонента в формах SAF содержит своего рода абстракцию ресурса текстового свойства, связанную со строкой в ​​файле свойств для класса, и вам нужно разорвать эту ссылку и просто вставить фактическое значение в форму Netbeans 7.3.Если вы пропустите один параметр, связанный с ресурсом, в форме, вы получите то же самое сообщение об ошибке, пока все не исправите.Мне удалось выполнить это упражнение для чрезвычайно сложной системы, и мне потребовалось несколько дней, чтобы частично освоить кривую.Всего 15 дополнительных кадров, чтобы сделать наиболее сложным, но не так много, как основной вид, который я сделал первым.

1 голос
/ 10 апреля 2013

Мне удалось открыть форму SAF в Netbeans 7.2.после использования некоторых советов с форума: http://forums.netbeans.org/topic43775-0-asc-30.html:

  1. Удалить комментарии // <editor-fold defaultstate="collapsed" desc="Generated Code"> arround initComponents () в коде вашей формы
  2. Избавиться от всех @Action аннотаций- вместо этого используйте componentObject .addActionListener () или аналогичный
  3. Избавьтесь от всех org.jdesktop.application и ... getActionMap ()
  4. Из файла .form удалите всетеги, начинающиеся с <Property name="action" type="javax.swing.Action".

Я не гарантирую, что в вашем случае это сделает вашу форму работающей на 100%, но для меня это сработало - мою форму можно открыть в Netbeans 7.2.

Если Netbeans отображает некоторые ошибки или предупреждения, прочитайте эти сообщения и попытайтесь выяснить, что не так - возможно, вы, например, слишком много удалили.

...