Уже давно Ñ ÑлÑÑал об инÑÑÑÑменÑе Ð´Ð»Ñ Ð°Ð²ÑомаÑизаÑии ÑбоÑки пÑоекÑа â Ant, но как-Ñо не мог найÑи ÐµÐ¼Ñ ÑеалÑного пÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² пÑоекÑаÑ
на PHP. ÐомпилиÑÑ Ð²Ñоде ниÑего не надо, внеÑние библиоÑеки вполне можно подклÑÑиÑÑ ÑеÑез
ÐобÑем вÑе как вÑегда. ÐакаÑ-Ñо Ð¿Ð¾Ð´Ð¾Ð±Ð½Ð°Ñ ÑÑÑка вÑоде Ð±Ñ Ð¸ не помеÑала бÑ, но вÑе и Ñак Ñ Ð¾ÑоÑо ÑабоÑало и Ð»ÐµÐ½Ñ Ð±Ñло изÑÑаÑÑ Ð¿ÑевдопомогаÑÑÑÑ ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ. Так бÑло до ÑÐµÑ Ð¿Ð¾Ñ, пока Ñ Ð½Ðµ познакомилÑÑ Ñ Javaâ¦
С пÑÐ¸Ñ Ð¾Ð´Ð¾Ð¼ Ð´Ð¶Ð°Ð²Ñ Ð² Ð¼Ð¾Ñ Ð¶Ð¸Ð·Ð½Ñ, взглÑд на вопÑÐ¾Ñ Ð¸ÑполÑзоваÑÑ Ð¸Ð»Ð¸ Ð½ÐµÑ Ð°Ð²ÑомаÑиÑеÑкий Ð±Ð¸Ð»Ð´ÐµÑ Ð¾Ñпала Ñама Ñобой â иÑполÑзоваÑÑ. ÐÐµÐ´Ñ ÐºÐ°ÐºÐ¾Ð¹ ÑÑик бÑÐ´ÐµÑ Ð²ÑÑÑнÑÑ ÐºÐ¾Ð¼Ð¿Ð¸Ð»Ð¸ÑоваÑÑ Ð²Ñе ÑÐ°Ð¹Ð»Ñ Ð¿Ð¾ вÑем диÑекÑоÑиÑм пÑоекÑа и копиÑоваÑÑ Ð¸Ñ Ð´Ð»Ñ Ð´ÐµÐ¿Ð»Ð¾Ñ Ð² каÑалог конÑейнеÑа ÑеÑвлеÑов? ТолÑко оÑÐµÐ½Ñ ÑеÑпеливÑй и не ленивÑй Ñеловек. Ðо Ð»ÐµÐ½Ñ Ð´Ð²Ð¸Ð³Ð°ÑÐµÐ»Ñ Ð¿ÑогÑеÑÑа и Ñ Ð½Ð°Ñал ÑиÑаÑÑ Ð¿Ñо⦠maven.
Ðаже не Ð·Ð½Ð°Ñ ÐºÐ°Ðº он мне подвеÑнÑлÑÑ. ÐеÑоÑÑно поÑле одного из запÑоÑов в гÑгл в пÑоÑеÑÑе обÑÑениÑм оÑнов tomcat'а Ñ Ð¿Ð¾Ð»ÑÑил Ð·Ð½Ð°Ð½Ð¸Ñ Ð¾ ÑÑÑеÑÑвовании ÑÑой пÑогÑаммÑ. Уже ÑеÑвеÑÑÑй пÑодÑÐºÑ Ð¾Ñ Apache, коÑоÑÑй мне понадобилÑÑ Ð½Ð° пÑÑи к ÑазвеÑÑÑÐ²Ð°Ð½Ð¸Ñ Ð¿ÐµÑвого пÑоекÑа на java.
Maven ÑоÑеÑÐ°ÐµÑ Ð² Ñебе возможноÑÑи Ð°Ð½Ñ (билдиÑÑ Ð¸ копиÑоваÑÑ ÑайлÑ, пÑоводиÑÑ ÑеÑÑÑ), но кÑоме ÑÑого он Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ ÑеÑаÑÑ Ð·Ð°Ð²Ð¸ÑимоÑÑи библиоÑек пÑоекÑа, Ð¸Ð¼ÐµÐµÑ Ð²Ð¿Ð¾Ð»Ð½Ðµ ÑоÑмалÑнÑй lifecycle, Ð¸Ð¼ÐµÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво плагинов и Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ Ð²Ñе Ñе же ÑÑи Ñимвола в коммандной ÑÑÑоке:
ÐизненнÑй Ñикл Ñ Ð¼Ð°Ð²ÐµÐ½Ð° доволÑно ожидаемÑй:
ÐÑи ÑÑом вÑе Ñаги поÑледоваÑелÑнÑ. РеÑли, к пÑимеÑÑ, вÑполниÑÑ
ÐÑделÑно ÑÑÐ¾Ð¸Ñ ÑпомÑнÑÑÑ Ð¾ завиÑимоÑÑÑÑ . Maven конÑигÑÑиÑÑеÑÑÑ Ñайлом pom.xml, коÑоÑÑй Ð¼Ð¾Ð¶ÐµÑ ÑодежаÑÑ Ð±Ð»Ð¾Ðº <dependencies />. Рнем опиÑÑваеÑÑÑ ÐºÐ°ÐºÐ¸Ðµ библиоÑеки нÑÐ¶Ð½Ñ Ð¿ÑоекÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»Ð½Ð¾Ñенного ÑÑнкÑиониÑованиÑ. Ðа Ñаге validate мавен пÑовеÑÑÐµÑ ÑдовлеÑвоÑÐµÐ½Ñ Ð»Ð¸ завиÑимоÑÑи и еÑли неÑ, Ñо ÑкаÑÐ¸Ð²Ð°ÐµÑ Ð¸Ð· ÑдаленнÑй ÑепозиÑоÑиев Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñе компоненÑÑ Ð² ÑепозиÑоÑий локалÑнÑй. Так, еÑли 10 пÑоекÑов завиÑÑÑ Ð¾Ñ Ð¾Ð´Ð½Ð¾Ð¹ и Ñой же библиоÑеки SomeSpecificOrm, Ñо нам болÑÑе не надо подклÑÑаÑÑ ÐµÐµ в 10 меÑÑÐ°Ñ ÑеÑез
Ð ÑепеÑÑ Ð¿Ð¾Ð´Ð¾Ð¹Ð´ÐµÐ¼ непоÑÑедÑÑвенно к вопÑоÑÑ Â«Ñем мавен Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð² веб-ÑазÑабоÑке». Ðомимо компилиÑованиÑ, ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ пакеÑиÑованиÑ, мавен позволÑÐµÑ Ð´ÐµÐ»Ð°ÑÑ Ð´ÐµÐ¿Ð»Ð¾Ð¹ пÑоекÑа в tomcat поÑÑедÑÑвом плагина
ÐонÑигÑÑаÑÐ¸Ñ ÑÑебÑÐµÑ Ð½ÐµÐ±Ð¾Ð»ÑÑого поÑÑнениÑ. Так
Так как Ð´Ð»Ñ Ð´ÐµÐ¿Ð»Ð¾Ð¹Ð¼ÐµÐ½Ñа ÑеÑез Ñ Ð¾ÑÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ Ð½Ñжно пÑойÑи авÑоÑизаÑиÑ, а ÑказÑваÑÑ Ð´Ð°Ð½Ð½Ñе Ð´Ð»Ñ Ð»Ð¾Ð³Ð¸Ð½Ð° в Ñайле конÑигÑÑаÑии не Ñамое пÑавилÑное ÑеÑение, Ñак как Ð¾Ñ ÑеÑвеÑа к ÑеÑвеÑÑ Ð´Ð°Ð½Ð½Ñе могÑÑ Ð¸Ð·Ð¼ÐµÐ½ÑÑÑÑÑ, поÑÑÐ¾Ð¼Ñ Ð¸ÑполÑзÑеÑÑÑ ÑказаÑÐµÐ»Ñ Ð¿Ð¾ id. Сами же данне авÑоÑизаÑии конÑигÑÑиÑÑÑÑÑÑ Ð² Ñайле
ТепеÑÑ ÑÑÐ¾Ð±Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð¾ÑпÑавиÑÑ Ð² конÑÐµÐ¹Ð½ÐµÑ ÑеÑвлеÑов, доÑÑаÑоÑно вÑполниÑÑ:
Ðа. ÐапоÑледок Ñ Ð¾ÑÑ ÑказаÑÑ, ÑÑо мавен Ñак же дикÑÑÐµÑ ÑÐ²Ð¾Ñ Ð¸ÐµÑаÑÑ Ð¸Ñ Ð´Ð¸ÑекÑоÑий, но ÑÑÐ¾Ð±Ñ Ð½Ðµ ÑоздаваÑÑ ÐµÑ Ð²ÑÑÑнÑÑ, доÑÑаÑоÑно вÑполниÑÑ:
Ð Ð´Ð»Ñ eclipse еÑÑÑ ÑпеÑиалÑнÑй плагин, коÑоÑÑй ÑпÑоÑÑÐ¸Ñ Ñоздание и ÑопÑовожение пÑоекÑа.
P.S.ÐонимаÑ, ÑÑо маÑеÑиал ÑаÑкÑÑл не полноÑÑÑÑ, Ñак ÑÑо еÑли какие-Ñо моменÑÑ Ð¾ÑÑалиÑÑ ÑовÑем неÑÑнÑми или пÑоÑÑо не полнÑми â пиÑиÑе, а Ñ Ð±ÑÐ´Ñ ÑÑаÑÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½ÑÑÑ.
P.P.S. в оÑигиналÑной ÑÑаÑÑе пÑиÑÑÑÑÑвÑÐµÑ ÐµÑе неболÑÑой опÑоÑ, к ÑÑаÑÑÐ¸Ñ Ð² коÑоÑом, в болÑÑей ÑаÑÑи, пÑиглаÑаÑÑÑÑ Ð ÐÐ ÑазÑабоÑÑики, оÑÑалÑнÑе же â по заинÑеÑеÑованоÑÑи
svn:externals, оÑÑавалиÑÑ ÑолÑко ÑеÑÑÑ, коÑоÑÑе Ñвободно вÑполнÑлиÑÑ ÑеÑез $ phpunit AllTests.php, да пеÑÐµÐ½Ð¾Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ на ÑабоÑий ÑеÑÐ²ÐµÑ (svn export + неболÑÑой ÑамопиÑнÑй ÑкÑипÑ). Ðаже доÑÑаÑоÑно Ñ
оÑоÑÐ°Ñ ÑÑаÑÑÑ Ð¾Ð± иÑполÑзовании ant в eclipse не подвигла Ð¼ÐµÐ½Ñ Ð½Ð° иÑполÑзование Ñего инÑÑÑÑменÑа, да еÑе и build ÑÐ°Ð¹Ð»Ñ Ð¿Ð¸ÑаÑÑ Ð½Ðµ Ñ
оÑелоÑÑâ¦ÐобÑем вÑе как вÑегда. ÐакаÑ-Ñо Ð¿Ð¾Ð´Ð¾Ð±Ð½Ð°Ñ ÑÑÑка вÑоде Ð±Ñ Ð¸ не помеÑала бÑ, но вÑе и Ñак Ñ Ð¾ÑоÑо ÑабоÑало и Ð»ÐµÐ½Ñ Ð±Ñло изÑÑаÑÑ Ð¿ÑевдопомогаÑÑÑÑ ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ. Так бÑло до ÑÐµÑ Ð¿Ð¾Ñ, пока Ñ Ð½Ðµ познакомилÑÑ Ñ Javaâ¦
С пÑÐ¸Ñ Ð¾Ð´Ð¾Ð¼ Ð´Ð¶Ð°Ð²Ñ Ð² Ð¼Ð¾Ñ Ð¶Ð¸Ð·Ð½Ñ, взглÑд на вопÑÐ¾Ñ Ð¸ÑполÑзоваÑÑ Ð¸Ð»Ð¸ Ð½ÐµÑ Ð°Ð²ÑомаÑиÑеÑкий Ð±Ð¸Ð»Ð´ÐµÑ Ð¾Ñпала Ñама Ñобой â иÑполÑзоваÑÑ. ÐÐµÐ´Ñ ÐºÐ°ÐºÐ¾Ð¹ ÑÑик бÑÐ´ÐµÑ Ð²ÑÑÑнÑÑ ÐºÐ¾Ð¼Ð¿Ð¸Ð»Ð¸ÑоваÑÑ Ð²Ñе ÑÐ°Ð¹Ð»Ñ Ð¿Ð¾ вÑем диÑекÑоÑиÑм пÑоекÑа и копиÑоваÑÑ Ð¸Ñ Ð´Ð»Ñ Ð´ÐµÐ¿Ð»Ð¾Ñ Ð² каÑалог конÑейнеÑа ÑеÑвлеÑов? ТолÑко оÑÐµÐ½Ñ ÑеÑпеливÑй и не ленивÑй Ñеловек. Ðо Ð»ÐµÐ½Ñ Ð´Ð²Ð¸Ð³Ð°ÑÐµÐ»Ñ Ð¿ÑогÑеÑÑа и Ñ Ð½Ð°Ñал ÑиÑаÑÑ Ð¿Ñо⦠maven.
Ðаже не Ð·Ð½Ð°Ñ ÐºÐ°Ðº он мне подвеÑнÑлÑÑ. ÐеÑоÑÑно поÑле одного из запÑоÑов в гÑгл в пÑоÑеÑÑе обÑÑениÑм оÑнов tomcat'а Ñ Ð¿Ð¾Ð»ÑÑил Ð·Ð½Ð°Ð½Ð¸Ñ Ð¾ ÑÑÑеÑÑвовании ÑÑой пÑогÑаммÑ. Уже ÑеÑвеÑÑÑй пÑодÑÐºÑ Ð¾Ñ Apache, коÑоÑÑй мне понадобилÑÑ Ð½Ð° пÑÑи к ÑазвеÑÑÑÐ²Ð°Ð½Ð¸Ñ Ð¿ÐµÑвого пÑоекÑа на java.
Maven ÑоÑеÑÐ°ÐµÑ Ð² Ñебе возможноÑÑи Ð°Ð½Ñ (билдиÑÑ Ð¸ копиÑоваÑÑ ÑайлÑ, пÑоводиÑÑ ÑеÑÑÑ), но кÑоме ÑÑого он Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ ÑеÑаÑÑ Ð·Ð°Ð²Ð¸ÑимоÑÑи библиоÑек пÑоекÑа, Ð¸Ð¼ÐµÐµÑ Ð²Ð¿Ð¾Ð»Ð½Ðµ ÑоÑмалÑнÑй lifecycle, Ð¸Ð¼ÐµÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво плагинов и Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ Ð²Ñе Ñе же ÑÑи Ñимвола в коммандной ÑÑÑоке:
mvn vs ant.ÐизненнÑй Ñикл Ñ Ð¼Ð°Ð²ÐµÐ½Ð° доволÑно ожидаемÑй:
validateâ пÑовеÑÑÐµÑ ÐºÐ¾ÑÑекÑноÑÑÑ Ð¼ÐµÑаинÑоÑмаÑии о пÑоекÑеcompileâ компилиÑÑÐµÑ Ð¸ÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸testâ пÑогонÑÐµÑ ÑеÑÑÑ ÐºÐ»Ð°ÑÑов из пÑедÑдÑÑего Ñагаpackageâ ÑпаковÑÐ²Ð°ÐµÑ ÑкомпилиÑованÑе клаÑÑÑ Ð² ÑдобнопеÑемеÑаемÑй ÑоÑÐ¼Ð°Ñ (jar или war, к пÑимеÑÑ)integration-testâ оÑпÑавлÑÐµÑ ÑпаковÑннÑе клаÑÑÑ Ð² ÑÑÐµÐ´Ñ Ð¸Ð½ÑегÑаÑионного ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ пÑогонÑÐµÑ ÑеÑÑÑverifyâ пÑовеÑÑÐµÑ ÐºÐ¾ÑÑекÑноÑÑÑ Ð¿Ð°ÐºÐµÑа и ÑдовлеÑвоÑение ÑÑебованиÑм каÑеÑÑваinstallâ загонÑÐµÑ Ð¿Ð°ÐºÐµÑ Ð² локалÑнÑй ÑепозиÑоÑий, оÑкÑда он (пекаÑ) бÑÐ´ÐµÑ Ð´Ð¾ÑÑÑпен Ð´Ð»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ°Ðº завиÑимоÑÑÑ Ð² дÑÑÐ³Ð¸Ñ Ð¿ÑоекÑаÑdeployâ оÑпÑавлÑÐµÑ Ð¿Ð°ÐºÐµÑ Ð½Ð° ÑдаленнÑй production ÑеÑвеÑ, оÑкÑда дÑÑгие ÑазÑабоÑÑики его могÑÑ Ð¿Ð¾Ð»ÑÑиÑÑ Ð¸ иÑполÑзоваÑÑ
ÐÑи ÑÑом вÑе Ñаги поÑледоваÑелÑнÑ. РеÑли, к пÑимеÑÑ, вÑполниÑÑ
$ mvn package, Ñо ÑакÑиÑеÑки бÑдÑÑ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ñ Ñаги: validate, compile, test и package. Таким обÑазом иÑполÑзоваÑÑ Ð¼Ð°Ð²ÐµÐ½ доволÑно пÑоÑÑо. ÐапиÑали код, вÑполнили mvn test и можно ÑабоÑаÑÑ Ð´Ð°Ð»ÑÑе, ÑбедивÑиÑÑ ÑÑо код не ÑодеÑÐ¶Ð¸Ñ ÑинÑакÑиÑеÑкиÑ
и логиÑеÑкиÑ
оÑибок.ÐÑделÑно ÑÑÐ¾Ð¸Ñ ÑпомÑнÑÑÑ Ð¾ завиÑимоÑÑÑÑ . Maven конÑигÑÑиÑÑеÑÑÑ Ñайлом pom.xml, коÑоÑÑй Ð¼Ð¾Ð¶ÐµÑ ÑодежаÑÑ Ð±Ð»Ð¾Ðº <dependencies />. Рнем опиÑÑваеÑÑÑ ÐºÐ°ÐºÐ¸Ðµ библиоÑеки нÑÐ¶Ð½Ñ Ð¿ÑоекÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»Ð½Ð¾Ñенного ÑÑнкÑиониÑованиÑ. Ðа Ñаге validate мавен пÑовеÑÑÐµÑ ÑдовлеÑвоÑÐµÐ½Ñ Ð»Ð¸ завиÑимоÑÑи и еÑли неÑ, Ñо ÑкаÑÐ¸Ð²Ð°ÐµÑ Ð¸Ð· ÑдаленнÑй ÑепозиÑоÑиев Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñе компоненÑÑ Ð² ÑепозиÑоÑий локалÑнÑй. Так, еÑли 10 пÑоекÑов завиÑÑÑ Ð¾Ñ Ð¾Ð´Ð½Ð¾Ð¹ и Ñой же библиоÑеки SomeSpecificOrm, Ñо нам болÑÑе не надо подклÑÑаÑÑ ÐµÐµ в 10 меÑÑÐ°Ñ ÑеÑез
svn:external, оÑобенно, еÑли библиоÑека Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ Ð´Ð¾ÑÑаÑоÑно меÑÑа, а доÑÑаÑоÑно ÑказаÑÑ ÐµÐµ в Ñайле завиÑимоÑÑей и она бÑÐ´ÐµÑ Ð±ÑаÑÑÑÑ Ð¸Ð· локалÑного ÑепозиÑоÑÐ¸Ñ Ð¼Ð°Ð²ÐµÐ½Ð°. ÐÑи Ñказании завиÑимоÑÑей можно ÑказÑваÑÑ Ð½Ðµ ÑолÑко Ð¸Ð¼Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки, но и ее веÑÑÐ¸Ñ â Ñаким обÑазом не Ð²Ð¾Ð·Ð½Ð¸ÐºÐ½ÐµÑ Ð¿Ñоблем Ñ Ð¾Ð±ÑаÑной ÑовмеÑÑимоÑÑÑÑ.Ð ÑепеÑÑ Ð¿Ð¾Ð´Ð¾Ð¹Ð´ÐµÐ¼ непоÑÑедÑÑвенно к вопÑоÑÑ Â«Ñем мавен Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð² веб-ÑазÑабоÑке». Ðомимо компилиÑованиÑ, ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ пакеÑиÑованиÑ, мавен позволÑÐµÑ Ð´ÐµÐ»Ð°ÑÑ Ð´ÐµÐ¿Ð»Ð¾Ð¹ пÑоекÑа в tomcat поÑÑедÑÑвом плагина
tomcat-maven-plugin. ÐонÑигÑÑиÑÑеÑÑÑ Ð¾Ð½ в pom.xml и Ð¸Ð¼ÐµÐµÑ Ð¿ÑиблизиÑелÑно ÑлÑдеÑÑий вид:
[...]
<plugins>
<plugin>
<groupid>org.codehaus.mojo</groupid>
<artifactid>tomcat-maven-plugin</artifactid>
<version>1.0-beta-1</version>
<configuration>
<path>/</path>
<url>http://site.local:8080/manager</url>
<server>site.local</server>
</configuration>
</plugin>
</plugins>
[...]
ÐонÑигÑÑаÑÐ¸Ñ ÑÑебÑÐµÑ Ð½ÐµÐ±Ð¾Ð»ÑÑого поÑÑнениÑ. Так
path оÑвеÑÐ°ÐµÑ Ð·Ð° пÑÑÑ Ð½Ð° коÑоÑÑй бÑÐ´ÐµÑ ÑазвеÑнÑÑ ÑеÑвлеÑ. Так как Ð¼Ñ ÑазвоÑаÑиваем полноÑенное ÑамодоÑÑаÑоÑное веб-пÑиложение, Ñо ÑазвоÑаÑиваÑÑ Ð±Ñдем в /. Url ÑказÑÐ²Ð°ÐµÑ Ð½Ð° пÑÑÑ Ðº менеджеÑÑ Ñ
оÑÑа, ÑеÑез коÑоÑÑй бÑдем пÑоводиÑÑ Ð´ÐµÐ¿Ð»Ð¾Ð¹. СеÑÐ²Ð»ÐµÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑа ÑоздаеÑÑÑ Ð¾Ð±ÑÑно во вÑÐµÐ¼Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ виÑÑÑалÑного Ñ
оÑÑа. Server ÑказÑÐ²Ð°ÐµÑ id ÑеÑвеÑа. ТÑÑ Ð½Ñжно еÑе более ÑглÑбиÑÑÑÑ Ð² обÑÑÑнениÑâ¦Ð¢Ð°Ðº как Ð´Ð»Ñ Ð´ÐµÐ¿Ð»Ð¾Ð¹Ð¼ÐµÐ½Ñа ÑеÑез Ñ Ð¾ÑÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ Ð½Ñжно пÑойÑи авÑоÑизаÑиÑ, а ÑказÑваÑÑ Ð´Ð°Ð½Ð½Ñе Ð´Ð»Ñ Ð»Ð¾Ð³Ð¸Ð½Ð° в Ñайле конÑигÑÑаÑии не Ñамое пÑавилÑное ÑеÑение, Ñак как Ð¾Ñ ÑеÑвеÑа к ÑеÑвеÑÑ Ð´Ð°Ð½Ð½Ñе могÑÑ Ð¸Ð·Ð¼ÐµÐ½ÑÑÑÑÑ, поÑÑÐ¾Ð¼Ñ Ð¸ÑполÑзÑеÑÑÑ ÑказаÑÐµÐ»Ñ Ð¿Ð¾ id. Сами же данне авÑоÑизаÑии конÑигÑÑиÑÑÑÑÑÑ Ð² Ñайле
~/.m2/settings.xml в ÑекÑии servers. Так Ñ Ð¼ÐµÐ½Ñ ÑÑа ÑекÑÐ¸Ñ Ð²ÑглÑÐ´Ð¸Ñ ÑледÑÑÑим обÑазом:
[...]
<servers>
<server>
<id>site.local</id>
<username>manager</username>
<password>manager</password>
</server>
</servers>
[...]
username и password Ð´Ð¾Ð»Ð¶Ð½Ñ ÑооÑвеÑÑÑвоваÑÑ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ñ Ð¿Ñавами manager из Ñайла tomcat-users.xml(подÑобнее в пÑедÑдÑÑей ÑÑаÑÑе о ÑеÑвлеÑаÑ
).ТепеÑÑ ÑÑÐ¾Ð±Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð¾ÑпÑавиÑÑ Ð² конÑÐµÐ¹Ð½ÐµÑ ÑеÑвлеÑов, доÑÑаÑоÑно вÑполниÑÑ:
$ mvn tomcat:deploy и мавен Ñам позабоÑиÑÑÑ Ð¾ компилиÑовании, ÑеÑÑиÑовании, пакеÑиÑовании и деплойменÑе пÑоекÑа. ÐÑÑанеÑÑÑ ÑолÑко обновиÑÑÑÑ ÑÑÑаниÑÑ Ð±ÑаÑзеÑа, ÑÑÐ¾Ð±Ñ ÑвидеÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ.Ðа. ÐапоÑледок Ñ Ð¾ÑÑ ÑказаÑÑ, ÑÑо мавен Ñак же дикÑÑÐµÑ ÑÐ²Ð¾Ñ Ð¸ÐµÑаÑÑ Ð¸Ñ Ð´Ð¸ÑекÑоÑий, но ÑÑÐ¾Ð±Ñ Ð½Ðµ ÑоздаваÑÑ ÐµÑ Ð²ÑÑÑнÑÑ, доÑÑаÑоÑно вÑполниÑÑ:
$ mvn archetype:create \ -DarchetypeGroupId=org.apache.maven.archetypes \ -DgroupId=com.mycompany.app \ -DartifactId=my-app
Ð Ð´Ð»Ñ eclipse еÑÑÑ ÑпеÑиалÑнÑй плагин, коÑоÑÑй ÑпÑоÑÑÐ¸Ñ Ñоздание и ÑопÑовожение пÑоекÑа.
P.S.ÐонимаÑ, ÑÑо маÑеÑиал ÑаÑкÑÑл не полноÑÑÑÑ, Ñак ÑÑо еÑли какие-Ñо моменÑÑ Ð¾ÑÑалиÑÑ ÑовÑем неÑÑнÑми или пÑоÑÑо не полнÑми â пиÑиÑе, а Ñ Ð±ÑÐ´Ñ ÑÑаÑÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½ÑÑÑ.
P.P.S. в оÑигиналÑной ÑÑаÑÑе пÑиÑÑÑÑÑвÑÐµÑ ÐµÑе неболÑÑой опÑоÑ, к ÑÑаÑÑÐ¸Ñ Ð² коÑоÑом, в болÑÑей ÑаÑÑи, пÑиглаÑаÑÑÑÑ Ð ÐÐ ÑазÑабоÑÑики, оÑÑалÑнÑе же â по заинÑеÑеÑованоÑÑи
