metaclass: (дзедline)
[personal profile] metaclass
Разбираюсь потиху с Intellij IDEA и скалой. И, как обычно, утыкаюсь в "расхождения по земельному вопросу" с жабными инструментами. Сколько раз это все дело открывал - столько утыкался.

Вот у нас есть на данный момент что: jdk (много разных), мавен(две версии), sbt(аналог мавена для скалы), IDEA и тыщи плагинов под мавен, sbt и идею.
Я прочел документацию по мавену и sbt, но от входа все равно не понимаю, как принято создавать проекты с нуля и как принято их деплоить. Открываешь какой-нибудь пример, а там все заканчивается строкой вида sbt container:start, которая работает исключительно внутри запущенного sbt и с помощью плагина типа "com.github.siasia" %% "xsbt-web-plugin. Или мавен с jetty-плагином.

Предположительно, можно поставить jetty сервисом и деплоить туда приложение в виде war. Но сборка этого war и особенно копирование зависимостей для него для меня темный лес.
Я обычно начинаю с того, что запускаю jetty внутри своего приложения, передавая ему хендлер явно, т.к. таким образом для меня проще понять, что в каком порядке работает и откуда берется конфигурация. Но даже в этом случае количество вариаций на тему "запустить жабу с указанием classpath и main class" просто поражает.
Т.е. запуск из мавена, запуск из sbt, запуск из idea, деплоймент в контейнер и запуск из консоли руками и запуск в виде jar - это все совершенно между собой различающиеся варианты, с разными classpath, разными репозиториями и прочим таким.

Плюс еще несколько десятков версий на каждую зависимость, которые нужно внятно выбрать при добавлении. Слава богу, они хоть не конфликтовали у меня пока.

Date: 2013-03-06 06:06 pm (UTC)
From: [identity profile] evil-invader.livejournal.com
Ну собсно я про это и написал. Просто неизвестно что там за проект. Если изначально сделан как мавен проект - то тогда "сделать мне билд".
Если груда какого-то кода, то проще антом расписать сборку.

Date: 2013-03-06 06:10 pm (UTC)
From: [identity profile] jdevelop.livejournal.com
вот да, непонятно, need moar gold!

Date: 2013-03-06 07:17 pm (UTC)
From: [identity profile] nealar.livejournal.com
Сам ещё не видел, шо там внутре. Пока что, тыкался только как end-user, слово WAR, например, узнал вчера.

Date: 2013-03-07 01:06 am (UTC)
From: [identity profile] jdevelop.livejournal.com
что если попросить помощи у товарищей "в теме"?

Date: 2013-03-07 06:33 am (UTC)
From: [identity profile] jdevelop.livejournal.com
задавайте свои ответы, %username%

Date: 2013-03-07 04:19 am (UTC)
From: [identity profile] norguhtar.livejournal.com
maven имеет смысл использовать если у проекта есть зависимости от сторонних библиотек. Тогда нет головной боли с их вытягиванием и подкладыванием. Оно само это делает.

Date: 2013-03-07 06:16 am (UTC)
From: [identity profile] evil-invader.livejournal.com
Слабо себе представляю проект без зависимости от сторонних библиотек. Даже если все библиотеки не сторонние, а свои, то имеет смысл разворачивать локальный репозиторий.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 14th, 2025 01:32 pm
Powered by Dreamwidth Studios