|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Среда разработки: Java 1.8, Maven, IntelliJ IDEA Есть несколько проектов ( project1 , project2 ,...), которые используют одинаковые классы. Эти классы из одинаковых хочется 1) Сделать едиными и вынести их в отдельное место (директорию, проект, библиотеку - lib ), доступное каждому проекту projectX . 2) При этом файлы lib.java должны быть модифицируемыми, как и собственные файлы проектов, т.е. при сборке проекта projectX измененные файлы lib.java компилировались бы и попадали в сборку со всеми последними правками. Вот здесь хорошо рассказано, как с помощью maven создать и подключить свою библиотеку. Но это получится бинарная библиотека lib.class . Чтобы обновлять поведение её классов, её нужно каждый раз пересобирать в виде отдельного проекта и отправлять в местный репозитарий, что есть весьма неудобно. Как сделать так, чтобы было можно было разрабатывать projectX и параллельно в том же открытом проекте редактировать исходники lib.java ? Как вообще такая задача решается в Java стандартным образом? Я новичок в Java , пришел из Delphi . В Delphi эта задача элементарно решается добавлением в sourcepath проекта всех нужных путей с исходниками. У Java тоже есть sourcepath , но непонятно, как и где его расширять, тем более на каталоги, внешние по отношению к проекту. Заранее спасибо за все советы! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2020, 20:35 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, Стандартный путь - maven repository. А так, сюда ещё надо навернуть CI/CD, рекомендую gitlab. Грубо говоря, вносите изменения в библиотеку, и она по пайплайну автоматически публикуется в maven repository. Конечно все это предварительно надо настроить. И это не совсем просто, как хотелось бы. Можно "проще" Создаете maven проект типа POM Туда,как модули добавляете нужные вам проекты библиотек и приложения. Не забудьте прописать зависимости в проектах от библиотеки-модуля. Теперь, по идее при сборке приложения будет собираться и модуль библиотеки. Т.к. Java это "Кровавый Ынтыпрайз", то инфраструктура разработки здесь достаточно сложная. Т.к. рассчитана на команды в сотни человек, где каждый пилит свой маленький кусочек. Поэтому инструменты такие "монструозные". И тут либо вы научитесь ими пользоваться, либо вам будет тяжело. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2020, 07:51 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, Можно тут как в дельфи. Для этого убрать мавен и собирать через IDE. А в иде - компилировать все и или конкретный проект ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2020, 09:55 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp shalamyansky, Можно тут как в дельфи. Для этого убрать мавен и собирать через IDE. А в иде - компилировать все и или конкретный проект так делать не нужно, будет плохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2020, 20:05 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, ты можешь сделать много проектов. И для каждого из них Код: java 1.
и после этого через локальный репозиторий они станут видимы все для всех. Это самый простой способ. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2020, 20:51 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras PetroNotC Sharp shalamyansky, Можно тут как в дельфи. Для этого убрать мавен и собирать через IDE. А в иде - компилировать все и или конкретный проект так делать не нужно, будет плохо. Плохо будет когда без мавена не умеешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2020, 23:58 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp dakeiras пропущено... так делать не нужно, будет плохо. Плохо будет когда без мавена не умеешь. не умеешь что? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 03:10 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras PetroNotC Sharp пропущено... Плохо будет когда без мавена не умеешь. не умеешь что? Разбивать проекты на модули. Компилировать все или частями. В java мальчик нет единственно верной линии партии. Все делается тысячей способов. Мы на работе пишем код. Сборку вообще делают другие люди. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 08:29 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp dakeiras пропущено... не умеешь что? Разбивать проекты на модули. Компилировать все или частями. В java мальчик нет единственно верной линии партии. Все делается тысячей способов. Мы на работе пишем код. Сборку вообще делают другие люди. мне честное слово нравится этот форум. Ты с чего решил что я мальчик? Скорее дедушка (по знаниям и опыту). При том 300 летний. По теме: я не понимаю что вы говорите. Какие модули без мавена? Как частями компилировать? Вы коммитите не собирая проект что-ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 11:08 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras, О чем я и говорю. Человек не знает как написать проект в IDE с помощью меню - новый проект, сборка - пересобрать всё и т.д. Хотите повысить скилы? Спрашивайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 11:35 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras, Есть сборка gradle.. Спрашивайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 11:37 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras Вы коммитите не собирая проект что-ли? Зачем?! Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты. Потом делаешь pull request. Ну а там "старшие товарищи" все объяснят за код. <:o) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 06:51 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul dakeiras Вы коммитите не собирая проект что-ли? Зачем?! Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты. Потом делаешь pull request. Ну а там "старшие товарищи" все объяснят за код. <:o) скорее объяснят за сломанный билд. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 10:13 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul, Не. Я за горячей клавишей build тянусь рукой каждые 30 сек. Привычка. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 10:57 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras mad_nazgul пропущено... Зачем?! Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты. Потом делаешь pull request. Ну а там "старшие товарищи" все объяснят за код. <:o) скорее объяснят за сломанный билд. Кому? Себе?! :-) <:o) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 12:38 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mad_nazgul, Не. Я за горячей клавишей build тянусь рукой каждые 30 сек. Привычка. Зачем?! Я больше спринговые тесты запускаю. А полный билд, только перед тем, как Pull Request сделать. Правда он самому себе идет. Но привычку нужно поддерживать. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 12:40 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul, Привычка. Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов. Знаешь как художники пишут?))))) Мазнул кистью и отошел на 3 шага... Посмотрел))) Где то уже писал, что запускаю прогу по 300 раз в день. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 12:43 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mad_nazgul, Привычка. Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов. Знаешь как художники пишут?))))) Мазнул кистью и отошел на 3 шага... Посмотрел))) Где то уже писал, что запускаю прогу по 300 раз в день. Ну я тоже начинал с Turbo Pascal'я. Но это не значит, что надо тянуть привычки тридцатилетней давности. Тем более, когда их можно заменить, просто запуском теста. Внес изменения, запустил тест, посмотрел результат, повторил. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 13:49 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul PetroNotC Sharp mad_nazgul, Привычка. Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов. Знаешь как художники пишут?))))) Мазнул кистью и отошел на 3 шага... Посмотрел))) Где то уже писал, что запускаю прогу по 300 раз в день. Ну я тоже начинал с Turbo Pascal'я. Но это не значит, что надо тянуть привычки тридцатилетней давности. Тем более, когда их можно заменить, просто запуском теста. Внес изменения, запустил тест, посмотрел результат, повторил. Тест вызывает инкрементальный билд. FYI. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 13:57 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul, Нельзя кнопку Run заменить тестами. Совсем нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 14:11 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mad_nazgul, Нельзя кнопку Run заменить тестами. Совсем нельзя. Ты хотел сказать, что ты не знаешь как заменить. Тогда предложение становится истинным ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 14:19 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
dakeiras Тест вызывает инкрементальный билд. FYI. Ну это же не полностью пересобирать приложение. А если писать unit-тест, то там даже приложение не пересобирается, а только класс. В этом плане IDEA достаточно умная. И пересобирает, только изменения. Хотя в некоторых случаях могут быть проблемы. Если индексы "сломались", то можно несколько раз запускать тест и удивляться, почему выходит одна и та же ошибка. Решается полной пересборкой проекта. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 15:18 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mad_nazgul, Нельзя кнопку Run заменить тестами. Совсем нельзя. Так никто и не заменяет. Просто её не приходиться так часто запускать. В 99% случаев, я запускаю тесты. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 15:19 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
забыл ник PetroNotC Sharp mad_nazgul, Нельзя кнопку Run заменить тестами. Совсем нельзя. Ты хотел сказать, что ты не знаешь как заменить. Тогда предложение становится истинным ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 15:56 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mad_nazgul, Тут народ давно отметил, что оооочень часто тесты это зло. Как бы миллион мух не могут ошибаться. Серединки золотой трудно добится. А ты 99проц жизни тесты пишешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 15:59 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp забыл ник пропущено... Ты хотел сказать, что ты не знаешь как заменить. Тогда предложение становится истинным Нажми еще раз кнопку Run, может на этот раз получится правильный ответ ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 16:26 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Спасибо всем участникам! Не все, к сожалению, поняли суть просьбы, но некоторые поняли, им особое спасибо. "Библиотека" - это, пожалуй, слишком громкое слово, привычная ассоциация c пакетом (mvn install), наверное, сбивает с толку. "Общие исходные файлы для разных проектов" - вот как точнее назвать то, что я хочу получить. Пакеты, библиотеки, репозитории - это мощная концепция, но она предполагает некую завершенность. Библиотека - это нечто отлаженное, собранное, однозначно идентифицируемое и лежащее в строго определенном месте. Пользуйся на здоровье, но руками не не трогай! Часто же в разработке удобно иметь просто общие файлы, именно чтобы их трогать руками из разных мест. Открыл один проект, поправил, собрал. Открыт другой проект, посмотрел, что получилось, поправил, собрал. Открыл первый проект, пересобрал, если нужно. Вот уважаемый Zzz79 вроде бы знает как это сделать: Zzz79 вынести те классы,которые ты хочешь в отдельную либу и потом добавить этот модуль в артифакты проекта 1,проекта 2 и любого другого вынести в отдельную либу - это значит собрать все это добро в джарник при этом ты сможешь рефакторить файлы и текущего проекта и подключенного,надо только прокинуть ауты при этом у тебя будет сразу несколько корневых папок в проекте и ты без проблем сможешь их изменять и эти изменения будут подхватыватья в реальном времени ну тоесть это вполне реально ,так как я работал на таком проекте - где у нас было по 5 -10 модулей подключенных и все редактировалось без проблем Дорогой Zzz79, а можно поподробнее, как это хозяйство настроить, где "прокинуть ауты", что и где прописать, чтобы изменения подхватывались в реальном времени? Нельзя ли глянуть на структуру аналогичного проекта? Я попробовал, но получилось хреновенько. Сделал 2 проекта, каждый из 2-х модулей, один модуль общий для обоих проектов. Модули в смысле IDEA ("Project structure..."), а не maven, maven модули не позволили мне указать на "внешние" пути относительно проекта. Компилятор и среда пути к файлам модуля видят (после ручной настройки), в принципе можно и править, и собирать. Но настройки "библиотечного" модуля постоянно слетают при закрытии/открытии проекта, при каких-то еще событиях. Так жить нельзя. Вот здесь отцы-создатели maven предлагают решение схожей проблемы, но там структура не совсем такая, как я хочу. Возможно, придется делать так. Буду благодарен за образцы. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 16:28 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, В java это называется jar файл. Ни одного не подключал к проекту? Подходит? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 16:37 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
забыл ник, В ПТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 16:38 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp В java это называется jar файл. Ни одного не подключал к проекту? Подходит? Jar файл, в моем нынешнем понимании, - это архив с откомпилированными бинарными файлами *.class, то есть собственно пакет (библиотека). В проекте, ясен пень, таких до сотни и больше, сторонних производителей. Могу и свой сделать. Но библиотеки jar с бинарными файлами как раз и создают проблему - не ясно, мне не ясно, как одновременно, в течение одной сборки проекта, компилировать и собственные файлы проекта, и исходные файлы библиотеки. Или существуют мне пока неведомые управляемые jar-файлы с исходниками? Научите, тогда, пожалуйста, как с ними обходиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 16:58 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, Давай по шагам. Jar файл это dll в дельфи. Ты оттуда? Так и тут. Как в дельфи. В IDE открыто два проекта и один проект это jar файл либа utils.jar. Дальше что непонятно? Или ты в notepad.exe пишешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:06 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky Jar файл, в моем нынешнем понимании, - это архив с откомпилированными бинарными файлами *.class, то есть собственно пакет (библиотека). В проекте, ясен пень, таких до сотни и больше, сторонних производителей. Могу и свой сделать. Но библиотеки jar с бинарными файлами как раз и создают проблему - не ясно, мне не ясно, как одновременно, в течение одной сборки проекта, компилировать и собственные файлы проекта, и исходные файлы библиотеки. Или существуют мне пока неведомые управляемые jar-файлы с исходниками? Научите, тогда, пожалуйста, как с ними обходиться. Есть два подхода. 1) Можно собрать толстый jar-файл куда включить все classfiles из исходников и из библиотек. maven-shade-plugin этим занимается. На выходе мы получаем автономное приложение у которого все зависимости есть. 2) И второй способ - добавить в MANIFEST.MF в CLASSPATH относительные пути на все твои зависимости и публиковать их при билде. Как публиковать - тоже отдельная тема. Тут можешь хоть свои bash скрипты делать. Хоть искать коробочные решения. Этот способ хорош гибкостью. Можно легко обновить какие-то зависимости или подкинуть там 2-3 новых JDBC-драйвера. Оба способа хороши. И я использую оба. По ситуации. Есть еще и учебно-отладочный вариант когда jar вообще не собирается. Это тоже работает. В коротких тестах и учебниках по программированию на java. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:14 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mayton, Не понял твои варианты. Есть App1, App2, Utils.jar (utils class) Понятно что заказчику нужно jar тоже поставлять. Как dll. Какие варианты? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:21 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp В IDE открыто два проекта и один проект это jar файл либа utils.jar. Можно и так. Смотрим дальше. Итак, открыто два проекта, первый - обертка, второй - библиотека. Из основного проекта идет вызов к библиотечному классу. Появилась нужда перейти к вызываемому методу и что-то в нем поправить. Просто нажать мышкой не получится, придется переключить окно на второй проект, там найти файл и метод. Дальше собрать библиотечный проект, переключиться обратно на основной, собрать основной. И все это вместо одного нажатия горячей клавиши. Как-то не айс. Но можно, спору нет. Если вам нравится аналогия с Delphi, то в этой аналогии нет нужды собирать отдельную dll, а нужно воткнуть все необходимое в exe, за одну, естественно, сборку. Когда понадобится dll, будем делать dll, но не ранее того. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:28 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Не понял твои варианты. Есть App1, App2, Utils.jar (utils class) Понятно что заказчику нужно jar тоже поставлять. Как dll. Какие варианты? Не знаю. Мой комментарий относится к тому что квотировано. Я про заказчика там ничего не говорю. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:32 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mayton, ОК. Вариант1 - толстое приложение с utils.jar внутри мне лично не нра. Ждем автора. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:48 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mayton maven-shade-plugin Ага, спасибо, смотрю, наверное, это поможет. Но там много наворотов, надо разбираться. Елки-палки, что ж такие сложности для простой задачи - добавить пути поиска исходных файлов? При том что сам компилятор javac такую возможность предусматривает в sourcepath, а надстройки - maven, IDEA и иже с ними, рубят на подлете, и приходится так извращаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:50 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Я иногда собираю для себя консольные утилитки. Состоящие из 1 bash скрипта и 1 jar файла. И в этом случае такой "толстяк" удобен. Эти утилитки не имеют никакого смысла для форума sql.ru Они - специфичны для моих проектов и для моих задач. И никто не поймет что они делают. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:52 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Вариант1 - толстое приложение с utils.jar внутри мне лично не нра. Не понял. А разве любое приложение не собирается в единый jar, который содержит все-все нужные классы, кроме разве что тех, которые входят в поставку целевой JRE? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 17:58 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Спасибо, Zzz79! Zzz79 добавляешь его и далее ты увидишь в структуре своего проекта два корневых каталога-основной проект и редактируемая библиотека Я так сделал руками ("Project structure..."), но получилось плохо, написал выше. Попробую сейчас через gradle, как вы рекомендуете. Еще одна оболочка-плагин, чем дальше в лес, тем толще партизаны... Zzz79 скажу только одно раз у тебя возникла такая проблема - ты что то делаешь не так- так как этот подход жутчайшее легаси и никто так давно уже не работает Я уж догадываюсь. Но не возьму никак в толк, что тут такого неправильного? А если "правильно", то получается неудобно. Это тоже неправильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:12 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky PetroNotC Sharp mayton, Вариант1 - толстое приложение с utils.jar внутри мне лично не нра. Не понял. А разве любое приложение не собирается в единый jar, который содержит все-все нужные классы, кроме разве что тех, которые входят в поставку целевой JRE? Поскольку процесс сборки определяется IDE/сборщиком то мы можем только предполагать что там. Вот как вы включаете JDBC-драйверы в ваш проект? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:13 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky PetroNotC Sharp mayton, Вариант1 - толстое приложение с utils.jar внутри мне лично не нра. Не понял. А разве любое приложение не собирается в единый jar, который содержит все-все нужные классы, кроме разве что тех, которые входят в поставку целевой JRE? Это файл *.war))) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:22 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky, авторЯ уж догадываюсь. Но не возьму никак в толк, что тут такого неправильного? А если "правильно", то получается неудобно. Это тоже неправильно. нет в java одного решения ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:26 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Есть еще морально устаревшая технология OSGI. Которая тоже является стандартом на публикацию java-бинарников. И некоторые крупно-конторы все еще ее поддерживают. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:29 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mayton Вот как вы включаете JDBC-драйверы в ваш проект? Прописываю зависимость в pom.xml. Иначе пока и не умею. Насколько я вижу, в целевом jar в /BOOT-INF/lib после сборки находятся все необходимые библиотеки, в том числе и JDBC-драйвер. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:30 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky mayton Вот как вы включаете JDBC-драйверы в ваш проект? Прописываю зависимость в pom.xml. Иначе пока и не умею. Насколько я вижу, в целевом jar в /BOOT-INF/lib после сборки находятся все необходимые библиотеки, в том числе и JDBC-драйвер. В IDE без мавен стоит галка, включать ли дрова к бд в выходной файл war ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:38 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
shalamyansky mayton Вот как вы включаете JDBC-драйверы в ваш проект? Прописываю зависимость в pom.xml. Иначе пока и не умею. Насколько я вижу, в целевом jar в /BOOT-INF/lib после сборки находятся все необходимые библиотеки, в том числе и JDBC-драйвер. Их можно включать с разным scope. Код: java 1.
В случае с compiled они - физически включаются в бинарник. Связывание в фазе компилляции. Во втором варианте рантайм или тот сервер приложений. Или среда обещает (!) что нужный jdbc драйвер будет предоставлен в путях CLASSPATH. Эти оба способа вобщем правильные. Но второй считается более гибким т.к. JDBC драйвер следует "инверсии управления" и если ты правильно писал код то ты опирался только на неймспейс java.sql.* и не включал явно никаких конкретных драйверов. Это позволяет в будущем менять целевую DBMS или просто делать апгрейд драйвера если там какая-то ошибка была в старой версии. Какие выводы можно из этого всего сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:39 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Zzz79, так gradle - это получается альтернатива maven. Может, это и хорошая альтернатива, но мне она не подходит, не некоторым причинам я должен остаться на maven. Но за совет спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:45 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
mayton Код: java 1.
О как, классно! Про выводы не знаю, но информация крайне для меня ценная. По умолчанию, получается, работает compile . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 18:51 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Zzz79, >но вот модульная архитектура = реально прошлый век, Да. Нет смысла именно тут об этом. Он верно схватил 3 типа сборки. Это главное. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 19:02 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
это всё от того что нексус древнее г. Но к счастью есть бесплатный (для опен сорса) JCenter и Bintray. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 21:43 |
|
Как пройти в библиотеку?
|
|||
---|---|---|---|
#18+
Zzz79, Если ты еще 1,5 лет проживешь в java)) то уже не станешь говорить что "вот это единственно правильное решение". Ты сходишь от былинного камня налево, направо, прямо и просто разложишь карты путнику. Без патетики что он умрет. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 22:23 |
|
|
start [/forum/topic.php?all=1&fid=59&tid=2120719]: |
0ms |
get settings: |
22ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
852ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 958ms |
0 / 0 |