Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java tools & IDE's > Порядок описания библиотек в проектах Netbeans.


Автор: COVD 31.8.2010, 18:52
В окне списка библиотек проекта Netbeans есть две кнопки MoveUp и  MoveDown. Можно jar'ы перемещать по списку. Зачем?

Однако вот пришлось потратить много времени на борьбу с проблемой и проблема решилась как раз с помощью передвижек jar'ов. Приложение запускалось из Netbeans и в рантайме вдруг сталa выскакивать ошибка java.lang.NoSuchMethodError. Исчезла только после того, как jar с описанием интерфэйса был помещен на вершину списка. В последующих запусках порядок уже не влиял.

Что это? Особенность Netbeans? Реакция на ошибки в коде (скорее всего) ?

Автор: Vasay 31.8.2010, 19:28
Думаю, порядок не может иметь какого либо значения. 

Может просто был баг? Если сейчас jar вниз опустить - баг появится снова? 


Кстати, как был добавлен этот jar в проект? 

Автор: COVD 31.8.2010, 19:53
Цитата

Если сейчас jar вниз опустить - баг появится снова?

нет
Цитата

Кстати, как был добавлен этот jar в проект? 

Скорее всего вручную, через AddJAR/Folder в разделе Libraries. Их несколько десятков, они модифицируются и иногда бывают такие ситуации.

Автор: Vasay 31.8.2010, 21:09
COVD, 

если либы меняются, вполне вероятно причина в том, что ide не подгружает новые либы в класспаф.

Автор: COVD 31.8.2010, 21:29
Я менял название интерфейса, перекомпилировал библиотеки, и в IDE изменения были видны. Однако когда приложение запускалось целиком, то вызов некоторых методов интерфейса выбрасывали эту ошибку. Причем я в качестве эксперимента пробовал вызывать эти же методы на том же обьекте через invoke и это срабатывало. А напрямую - нет.

Если бы я перекомпилировал все приложение целиком, наверное какой-то конфликт обнаружился бы. 

Автор: Vasay 31.8.2010, 21:45
COVD,  сталкивался с чем-то подобным при веб разработке, когда среда при нажатии run не полностью обновляла приложении на сервере. Лечилось удалением приложения с сервера и запуском "clean and build" в НетБинсе.

Автор: COVD 31.8.2010, 21:47
Цитата

Если сейчас jar вниз опустить - баг появится снова?

Да! Теперь стабильно получаю ошибку, если jar на дне, и отсутствие ошибки, если jar на вершине списка библиотек.

Автор: Vasay 31.8.2010, 21:51
Цитата(COVD @  31.8.2010,  21:47 Найти цитируемый пост)
Да! Теперь стабильно получаю ошибку, если jar на дне, и отсутствие ошибки, если jar на вершине списка библиотек



Это уже чудеса! Похоже на баг IDE.... 


или на конфликт в библиотеках - может есть классы с одинаковым названием или что-то в этом роде 

Автор: COVD 31.8.2010, 21:55
Цитата

или на конфликт в библиотеках 

скорее всего это, будем искать

Автор: COVD 31.8.2010, 23:23
Причина была в одной старой библиотеке, из середины списка. Библиотека давно не компилировалась. Она ссылалась на jar с проблемным интерфейсом. Перекомпиляция библиотеки устранила недоразумение. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)