| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java tools & IDE's > Путь к lib |
| Автор: GZep 28.3.2011, 17:27 |
| Здравствуйте в Netbeans при компилировании проекта на Java, подключенные библиотеки копируются в dist/lib/*.jar. Не смог найти и интернете и в настройках, как сделать чтобы они копировались в dist/*.jar. Лучшим вариантом вижу решение где можно настроить эту опцию для каждой подключенной библиотеки отдельно. |
| Автор: COVD 28.3.2011, 17:50 |
| Нет такой настройки. А зачем? |
| Автор: GZep 28.3.2011, 22:01 |
Есть приложение, которое запускается в консольном режиме. Однако есть также другое, которое является графической оболочкой для этого приложения. Есть третье, которое тоже графическая оболочка но другая или у нее есть другой смысл на существование Ну как же так!? :( Может как-то по-другому делается подобное, не используя библиотеки? |
| Автор: COVD 29.3.2011, 18:19 | ||
Непонятно, что смущает? Папка dist первого приложения будет содержать app1.jar . Для второго - app2.jar и lib/app1.jar , если app1.jar используется как библиотека. Нетбинс в манифесте пропишет, где искать библиотеку. Два разных проекта, результатом билда каждого является папка dist. Потом создаете на компьютере, где должны работать приложения, две папки - app1 и app2. В каждую кладете соответствующий dist и запускаете их. |
| Автор: GZep 29.3.2011, 18:54 |
| COVD, так как подразумевается что все получаемые jar'ы исполняемые, хочется чтобы они все лежили параллельно, без всяких вложенных lib. |
| Автор: COVD 29.3.2011, 19:30 |
| упаковывайте приложение вместе с библиотеками в единый jar. http://java.sun.com/developer/technicalArticles/java_warehouse/single_jar/ |
| Автор: GZep 29.3.2011, 19:31 | ||||
| Перековырял наугад PROJECT_HOME/nbproject/build-impl.xml Чтобы в MANIFEST.MF не прописывалась lib директория меняем строчку
на:
В каком месте прописана эта директория для копирования библиотек не нашел, так что остается только руками вырезать нужное из lib на один уровень наверх. На самом деле, может подход какой-то неверный, но все равно кастомизация должна быть. Сделали бы имя это директории в конфиге редактируемой... Добавлено через 11 минут и 6 секунд COVD, спасибо, тоже как вариант. Жаль нету такой фичи с помощью простого чекбокса в настройках! |
| Автор: COVD 29.3.2011, 19:48 |
| Подход верный. Каждое приложение должно лежать в своей папке. В папке приложения также могут хранится проперти-файлы, лог-файлы, ресурсы (картинки) и файл запуска .bat с параметрами jvm. Все относящееся к этому приложению. |
| Автор: GZep 31.3.2011, 16:21 |
| COVD, ИМХО верный подход, это возможность кастомизации. У меня, например, 2 исполняемых файла в проекте на выбор. Причем один подгружает другой по принципу библиотеки. И здесь уже не логично исполняемый файл кидать в lib. |