Дар бораи мо
Дар 1С мо на танҳо платформаро таҳия мекунем
даромад
Мо аксар вақт maven-ро ҳамчун як системаи сохтани замимаҳои Java истифода мебарем ва дар ин мақолаи кӯтоҳ мо мехоҳем дар бораи яке аз мушкилоте, ки дар раванди ташкили таҳияи он рӯ ба рӯ шудем ва дар бораи равише, ки ба мо имкон дод, ки ин мушкилотро бартараф кунем. проблема.
Шартҳои пешакӣ ва ҷараёни кор
Бо назардошти хусусиятҳои рушд дар лоиҳаҳои maven мо, мо хеле зиёди модулҳо, вобастагӣ ва лоиҳаҳои кӯдаконаро истифода мебарем. Шумораи файлҳои pom дар як дарахт метавонад даҳҳо ва ҳатто садҳо бошад.
Чунин ба назар мерасад: кори калон нест, як бор офариданд ва фаромӯш карданд. Агар ба шумо лозим ояд, ки якбора дар ҳама файлҳо чизеро тағир диҳед ё илова кунед, дар муҳаррирҳо ва IDE асбобҳои зиёди мувофиқ мавҷуданд. Тағйироти маъмултарин ба pom.xml кадом аст? Мо боварӣ дорем, ки тағирот дар версияҳои лоиҳа ва вобастагӣ. Шояд касе бо ин бахс кардан мехохад, аммо дар мо айнан хамин аст. Сабаб дар он аст, ки дар баробари ядро, мо ҳамзамон бисёре аз китобхонаҳои шахсии худро таҳия мекунем ва барои такрори доимии натиҷаҳои сохтмон ва санҷиш, истифодаи аксҳо ба назари мо муносибати мувофиқ ба назар намерасад. Аз ин сабаб, рақами версияро дар лоиҳаҳо бо ҳар як сохтмон баланд кардан лозим аст.
Инчунин, гоҳ-гоҳ ба таҳиякунанда лозим аст, ки филиали китобхонаи шахсии худро созад ва фаъолияти онро аз ҳама вобастагӣ тафтиш кунад, ки барои он ӯ бояд версияи ҳамаи онҳоро дастӣ иваз кунад.
Ҳалли ибтидоӣ
Бо чунин тағйироти зуд-зуд ва сершумори версия, ман мехоҳам равандро дар дохили CI содда ва автоматӣ кунам. Дар ин ҷо як плагини қулай ва маъруф ба наҷот меояд. версияҳои-maven-плагин - онро пайваст кунед ва оғоз кунед
mvn -N версияҳои: маҷмӯи -DnewVersion = 2.0.1
ва Maven ҳама чизро тавре ки лозим аст, иҷро мекунад: он аз иерархия аз боло то поён мегузарад ва ҳама версияҳоро иваз мекунад - зебоӣ! Ҳоло танҳо як дархости ҷалб кардан боқӣ мемонад, ҳамкорон тағиротро баррасӣ хоҳанд кард ва шумо метавонед зуд ба танаи ҳамроҳ шавед. Ба зудӣ? Новобаста аз он ки чӣ гуна аст. Якчанд сад pom.xml барои баррасии, ва ин аст, коди ҳисоб нест,. Илова бар ин, ҳеҷ кас аз ихтилофҳои якҷоя бо шумораи зиёди файлҳои тағирёфта эмин нест. Дар ин ҷо бояд қайд кард, ки дар раванди CI, тағирёбии версия ба таври худкор дар баробари тағирёбии функсия ба амал меояд, на ба таври алоҳида.
Хусусиятҳои нав
Мо муддате ором шудем ва худамонро тарк карда, ҳамин тавр зиндагӣ кардем, то бачаҳо аз
mvn -Drevision = 2.0.0 бастаи тоза
Арзишҳои моликияти система нисбат ба арзишҳои муайяншуда бартарӣ дорандобъектҳо>.
Волидон
4.0.0
org.apache
апачи
18
org.apache.maven.ci
ци-падар
Аввалин CI Friendly
${revision}${sha1}${changelist}
...
1.3.1
- FOTO
насл
4.0.0
org.apache.maven.ci
ци-падар
${revision}${sha1}${changelist}
org.apache.maven.ci
ци-фарзанд
...
Агар шумо хоҳед, ки версияи 2.0.0-SNAPSHOT бунёд кунед, пас танҳо истифода баред
mvn -Drevision = 2.0.0 бастаи тоза
Агар шумо хоҳед, ки озод кунед, пас танҳо SNAPSHOT-ро аз нав танзим кунед
mvn -Dchangelist = бастаи тоза
* Намунаҳои дар боло овардашуда аз
Ҳақиқати бебаҳо
Ҳама чиз хуб ва солим аст, вақти он расидааст, ки ҳисси қаноатмандӣ дошта бошед, аммо не. Маълум мешавад, ки ин усул барои насб ва ҷойгиркунӣ кор намекунад, зеро он дар тавсифи артефактҳои дар анбор нашршуда иваз карда намешавад. ${ревизия} дар бораи маънои он ва maven дигар намефаҳманд, ки ин ҳама дар бораи чӣ аст.
org.apache
апачи
${ревизия}
Нуре дар охири туннель
Мо бояд роҳи ҳалли мушкилотро ҷустуҷӯ кунем. Вазъиятро наҷот дода метавонист
Илова кардани плагин ба лоиҳа
org.codehaus.mojo
плагини flatten-maven
1.1.0
дуруст
ResolCiFriendliesOnly
ҳамвор кардан
раванд-захираҳо
ҳамвор кардан
ҳамвор кардан.тоза
тоза
тоза
Муҳокима!
Охират муборак
Минбаъд, барои тағир додани версияи тамоми лоиҳа ва бигзоред, ки ҳама вобастагӣ аз он огоҳ шаванд, мо танҳо бояд элементро таҳрир кунем.нусхабардорӣ> танҳо дар реша pom.xml. На сад ё дутои ин файлҳо бо ҳамон тағирот ба барраси меоянд, балки як. Хуб, ба истифода лозим нест версияҳои-maven-плагин.
Манбаъ: will.com