Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> NetBeans: Недостатки при сборке 
:(
    Опции темы
Andrey1
Дата 26.8.2009, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 621
Регистрация: 27.2.2004
Где: Moscow

Репутация: нет
Всего: 5



Хочу поделиться ... э... непонятками при сборке приложений (веб-приложение с связанными  java модулями) в NetBeans (6.7.1):
1) Сборка (при любом малом изменении в коде) относительно долго идет, из-за всякой фигни:
1*) Тупая пересборка jar"ников модулей, от которых проект зависит. Да, clean-build. Тупо и долго. Почему нельзя перекомпилить только изменненые классы и их же заменить в jar"нике?
2*) Почему нельзя jar"ник и нужные классы частично держать в памяти? Как только все идет через хард, понятно, что все будет медленно работать.
3*) Почему NetBeans не умеет перегружать изменные jar-либы проекта? smile
4*) И все тоже самое для war-архива (если он используется).
2) Часто при попытке деплоя выскакивает некая ошибка (вроде `D:\...\MyClass.java:7: package mypackage does not exist'), которая потом куда-то внезапно пропадает при повторной сборке.
3) Передеплой не всегда нормально работает из-за того, что tomcat почему-то "хватает" и не отпускает какие-то jar"ники, которые проект использует (помогает только stop-start томката).

Что в этим всем делать? smile


Это сообщение отредактировал(а) Andrey1 - 27.8.2009, 09:06


--------------------
Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания.
из сутры помоста шестого патриарха Хуэйнена
PM MAIL WWW ICQ   Вверх
COVD
Дата 26.8.2009, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: 6
Всего: 43



Цитата

3) Передеплой не всегда нормально работает 

А вы как это делаете? Я сначала удаляю из webapp старый war. Дожидаюсь сообщения в консоли, что приложение удалено. Потом кладу в webapp новую версию. Дожидаюсь сообщения, что приложение стартовало. Обычно все нормально. Правда у меня много мелких приложений (без обилия библиотек), которые быстро собираются и быстро стартуют-удаляются.
PM MAIL   Вверх
Andrey1
Дата 27.8.2009, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 621
Регистрация: 27.2.2004
Где: Moscow

Репутация: нет
Всего: 5



Цитата(COVD @  26.8.2009,  19:04 Найти цитируемый пост)
А вы как это делаете?

Через закладку Services - жму undeploy. Потом жму Run.


--------------------
Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания.
из сутры помоста шестого патриарха Хуэйнена
PM MAIL WWW ICQ   Вверх
powerOn
Дата 27.8.2009, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 28
Всего: 159



Цитата(Andrey1 @  26.8.2009,  18:54 Найти цитируемый пост)
Да, clean-build. Тупо и долго. Почему нельзя перекомпилить только изменненые классы и их же заменить в jar"нике?

Дык, Clean-Build - это "Стереть и построить". Можно делать просто Build - тогда пересоберутся только измененные классы.

Цитата(Andrey1 @  26.8.2009,  18:54 Найти цитируемый пост)
Почему нельзя jar"ник и нужные классы частично держать в памяти? Как только все идет через хард, понятно, что все будет медленно работать.

Смонтируй в своей ОС in-memory диск и на время работы храни проект на нем, если хочешь чтоб скорость доступа была как в оперативной памяти.  smile 

Цитата(Andrey1 @  26.8.2009,  18:54 Найти цитируемый пост)
3*) Почему NetBeans не умеет перегружать изменные jar-либы проекта? smile
4*) И все тоже самое для war-архива (если он используется).

При дебаге хоть по одному классу перегружай (Apply Changes). В остальном случае трудно сказать, поскольку я таких проблем не испытывал.

Цитата(Andrey1 @  26.8.2009,  18:54 Найти цитируемый пост)
2) Часто при попытке деплоя выскакивает некая ошибка (вроде `D:\...\MyClass.java:7: package mypackage does not exist'), которая потом куда-то внезапно пропадает при повторной сборке.

Не сталкивался.

Цитата(Andrey1 @  26.8.2009,  18:54 Найти цитируемый пост)
3) Передеплой не всегда нормально работает из-за того, что tomcat почему-то "хватает" и не отпускает какие-то jar"ники, которые проект использует (помогает только stop-start томката).

Возможно поможет опция в contex.xml для неблокировки jar-ов. Но обычно такая штука бывает если делать Apply Changes в дебаг режиме, но тут ничего не поделаешь - особенность JVM.

А в целом: ничего идеального не существует. ;)



--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Andrey1
Дата 28.8.2009, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 621
Регистрация: 27.2.2004
Где: Moscow

Репутация: нет
Всего: 5



Цитата(powerOn @  27.8.2009,  11:00 Найти цитируемый пост)
Дык, Clean-Build - это "Стереть и построить". Можно делать просто Build - тогда пересоберутся только измененные классы.

Это да. Только проект, который зависит от java модулей, вызывает почему-то Clean-Build для модулей, если в них были изменения.

Цитата(powerOn @  27.8.2009,  11:00 Найти цитируемый пост)
Смонтируй в своей ОС in-memory диск и на время работы храни проект на нем, если хочешь чтоб скорость доступа была как в оперативной памяти.  smile 

Да, у меня была такая идея, тока слишком много ненужных мне проблем может быть. 
И ничего смешного smile .

Цитата(powerOn @  27.8.2009,  11:00 Найти цитируемый пост)
При дебаге хоть по одному классу перегружай (Apply Changes).

Ага, только  "Apply Changes" не работает, если меняется схема класса. Ну и с jar-никами не работает в принципе.

Цитата(powerOn @  27.8.2009,  11:00 Найти цитируемый пост)
Но обычно такая штука бывает если делать Apply Changes в дебаг режиме, но тут ничего не поделаешь - особенность JVM

С этим проблем не было, хвала буддийскому богу smile.

Цитата(powerOn @  27.8.2009,  11:00 Найти цитируемый пост)
А в целом: ничего идеального не существует. ;)

Понятно. Но всегда нужно стремиться к лучшему smile.


--------------------
Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания.
из сутры помоста шестого патриарха Хуэйнена
PM MAIL WWW ICQ   Вверх
powerOn
Дата 30.8.2009, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 28
Всего: 159



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


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Andrey1
Дата 31.8.2009, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 621
Регистрация: 27.2.2004
Где: Moscow

Репутация: нет
Всего: 5



Цитата(powerOn @  30.8.2009,  11:17 Найти цитируемый пост)
Если у вас есть четкое понимание того, как должен происходить билд для связанных проектов, то в принципе, ничто не мешает самостоятельно подкорректировать ant-скрипты.

Да, все к этому и идет. Тем более, если захочется иметь два релиза: test и production и хочется выкладывать классы прямо на сервер (без копирования либ).


--------------------
Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания.
из сутры помоста шестого патриарха Хуэйнена
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java tools & IDE's | Следующая тема »


 




[ Время генерации скрипта: 0.0671 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.