powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Как пройти в библиотеку?
25 сообщений из 52, страница 1 из 3
Как пройти в библиотеку?
    #39986875
shalamyansky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Среда разработки:
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 , но непонятно, как и где его расширять, тем более на каталоги, внешние по отношению к проекту.

Заранее спасибо за все советы!
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39986924
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shalamyansky,

Стандартный путь - maven repository.
А так, сюда ещё надо навернуть CI/CD, рекомендую gitlab.

Грубо говоря, вносите изменения в библиотеку, и она по пайплайну автоматически публикуется в maven repository.
Конечно все это предварительно надо настроить. И это не совсем просто, как хотелось бы.


Можно "проще"

Создаете maven проект типа POM
Туда,как модули добавляете нужные вам проекты библиотек и приложения.
Не забудьте прописать зависимости в проектах от библиотеки-модуля.

Теперь, по идее при сборке приложения будет собираться и модуль библиотеки.

Т.к. Java это "Кровавый Ынтыпрайз", то инфраструктура разработки здесь достаточно сложная.
Т.к. рассчитана на команды в сотни человек, где каждый пилит свой маленький кусочек.
Поэтому инструменты такие "монструозные".

И тут либо вы научитесь ими пользоваться, либо вам будет тяжело.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39986959
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shalamyansky,

Можно тут как в дельфи.
Для этого убрать мавен и собирать через IDE.
А в иде - компилировать все и или конкретный проект
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987256
dakeiras
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
shalamyansky,

Можно тут как в дельфи.
Для этого убрать мавен и собирать через IDE.
А в иде - компилировать все и или конкретный проект

так делать не нужно, будет плохо.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987261
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shalamyansky, ты можешь сделать много проектов. И для каждого из них

Код: java
1.
mvn install



и после этого через локальный репозиторий они станут видимы все для всех. Это самый простой способ.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987284
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras
PetroNotC Sharp
shalamyansky,

Можно тут как в дельфи.
Для этого убрать мавен и собирать через IDE.
А в иде - компилировать все и или конкретный проект

так делать не нужно, будет плохо.

Плохо будет когда без мавена не умеешь.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987304
dakeiras
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
dakeiras
пропущено...

так делать не нужно, будет плохо.

Плохо будет когда без мавена не умеешь.

не умеешь что?
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987326
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras
PetroNotC Sharp
пропущено...

Плохо будет когда без мавена не умеешь.

не умеешь что?
выше написано.
Разбивать проекты на модули. Компилировать все или частями.
В java мальчик нет единственно верной линии партии.
Все делается тысячей способов.
Мы на работе пишем код. Сборку вообще делают другие люди.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987384
dakeiras
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
dakeiras
пропущено...

не умеешь что?
выше написано.
Разбивать проекты на модули. Компилировать все или частями.
В java мальчик нет единственно верной линии партии.
Все делается тысячей способов.
Мы на работе пишем код. Сборку вообще делают другие люди.

мне честное слово нравится этот форум.
Ты с чего решил что я мальчик? Скорее дедушка (по знаниям и опыту). При том 300 летний.

По теме: я не понимаю что вы говорите. Какие модули без мавена? Как частями компилировать?

Вы коммитите не собирая проект что-ли?
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987394
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras,
О чем я и говорю.
Человек не знает как написать проект в IDE с помощью меню - новый проект, сборка - пересобрать всё и т.д.
Хотите повысить скилы? Спрашивайте.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39987396
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras,
Есть сборка gradle..
Спрашивайте.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988030
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras

Вы коммитите не собирая проект что-ли?


Зачем?!
Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты.
Потом делаешь pull request.
Ну а там "старшие товарищи" все объяснят за код.
<:o)
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988069
dakeiras
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
dakeiras

Вы коммитите не собирая проект что-ли?


Зачем?!
Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты.
Потом делаешь pull request.
Ну а там "старшие товарищи" все объяснят за код.
<:o)

скорее объяснят за сломанный билд.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988080
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Не. Я за горячей клавишей build тянусь рукой каждые 30 сек. Привычка.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988128
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras
mad_nazgul
пропущено...


Зачем?!
Пишешь тесты. Коммитишь. А CI/CD сама собирает проект и прогоняет все тесты.
Потом делаешь pull request.
Ну а там "старшие товарищи" все объяснят за код.
<:o)

скорее объяснят за сломанный билд.


Кому? Себе?! :-)
<:o)
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988131
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Не. Я за горячей клавишей build тянусь рукой каждые 30 сек. Привычка.


Зачем?!
Я больше спринговые тесты запускаю.

А полный билд, только перед тем, как Pull Request сделать.
Правда он самому себе идет.
Но привычку нужно поддерживать. :-)
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988135
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Привычка.
Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов.
Знаешь как художники пишут?)))))
Мазнул кистью и отошел на 3 шага... Посмотрел)))
Где то уже писал, что запускаю прогу по 300 раз в день.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988174
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Привычка.
Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов.
Знаешь как художники пишут?)))))
Мазнул кистью и отошел на 3 шага... Посмотрел)))
Где то уже писал, что запускаю прогу по 300 раз в день.


Ну я тоже начинал с Turbo Pascal'я.
Но это не значит, что надо тянуть привычки тридцатилетней давности.
Тем более, когда их можно заменить, просто запуском теста.

Внес изменения, запустил тест, посмотрел результат, повторил.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988179
dakeiras
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
PetroNotC Sharp
mad_nazgul,
Привычка.
Я начинал с дельфи. Это ГУИ. Постоянно надо смотреть отойдя на пару шагов.
Знаешь как художники пишут?)))))
Мазнул кистью и отошел на 3 шага... Посмотрел)))
Где то уже писал, что запускаю прогу по 300 раз в день.


Ну я тоже начинал с Turbo Pascal'я.
Но это не значит, что надо тянуть привычки тридцатилетней давности.
Тем более, когда их можно заменить, просто запуском теста.

Внес изменения, запустил тест, посмотрел результат, повторил.

Тест вызывает инкрементальный билд.
FYI.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988194
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Нельзя кнопку Run заменить тестами.
Совсем нельзя.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988200
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Нельзя кнопку Run заменить тестами.
Совсем нельзя.

Ты хотел сказать, что ты не знаешь как заменить. Тогда предложение становится истинным
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988245
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dakeiras

Тест вызывает инкрементальный билд.
FYI.


Ну это же не полностью пересобирать приложение.
А если писать unit-тест, то там даже приложение не пересобирается, а только класс.

В этом плане IDEA достаточно умная. И пересобирает, только изменения.
Хотя в некоторых случаях могут быть проблемы.
Если индексы "сломались", то можно несколько раз запускать тест и удивляться, почему выходит одна и та же ошибка.
Решается полной пересборкой проекта.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988248
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Нельзя кнопку Run заменить тестами.
Совсем нельзя.


Так никто и не заменяет.
Просто её не приходиться так часто запускать.
В 99% случаев, я запускаю тесты. :-)
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988260
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл ник
PetroNotC Sharp
mad_nazgul,
Нельзя кнопку Run заменить тестами.
Совсем нельзя.

Ты хотел сказать, что ты не знаешь как заменить. Тогда предложение становится истинным
оно истинное в твое голове. В нее новые знания не лезут. Только схоластические рассуждения.
...
Рейтинг: 0 / 0
Как пройти в библиотеку?
    #39988263
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Тут народ давно отметил, что оооочень часто тесты это зло.
Как бы миллион мух не могут ошибаться.
Серединки золотой трудно добится. А ты 99проц жизни тесты пишешь.
...
Рейтинг: 0 / 0
25 сообщений из 52, страница 1 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Как пройти в библиотеку?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]