ကြှနျုပျတို့အကွောငျး
1C တွင် ကျွန်ုပ်တို့သည် platform တစ်ခုသာမကဘဲ ဖွံ့ဖြိုးတိုးတက်သည်။
entry ကို
ကျွန်ုပ်တို့အများစုသည် Java အပလီကေးရှင်းများအတွက် တည်ဆောက်မှုစနစ်အဖြစ် maven ကိုအသုံးပြုကြပြီး၊ ဤဆောင်းပါးတိုတွင် စည်းရုံးရေးဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်တွင် ကျွန်ုပ်တို့ရင်ဆိုင်ခဲ့ရသည့်ပြဿနာများထဲမှတစ်ခုအကြောင်းနှင့် ၎င်းကိုကျော်လွှားနိုင်စေမည့်ချဉ်းကပ်မှုအကြောင်း ဆွေးနွေးလိုပါသည်။ ပြဿနာ။
လိုအပ်ချက်များနှင့် အလုပ်အသွားအလာများ
ကျွန်ုပ်တို့၏ maven ပရောဂျက်များတွင် ဖွံ့ဖြိုးတိုးတက်မှုဆိုင်ရာ တိကျသောအချက်များကြောင့်၊ ကျွန်ုပ်တို့သည် မော်ဂျူးများ၊ မှီခိုမှုများနှင့် ကလေးပရောဂျက်များစွာကို အသုံးပြုပါသည်။ သစ်ပင်တစ်ပင်ရှိ pom ဖိုင်အရေအတွက်သည် ဆယ်ဂဏန်း သို့မဟုတ် ရာဂဏန်းအထိ ရှိနိုင်သည်။
ကြီးကြီးမားမားတော့ မဟုတ်ဘူး၊ သူတို့က အဲဒါကို တစ်ခါတည်း ဖန်တီးပြီး မေ့သွားပုံရတယ်။ ဖိုင်များအားလုံးတွင် တစ်ခုခုကို တစ်ပြိုင်နက် ပြောင်းလဲရန် သို့မဟုတ် ထည့်ရန် လိုအပ်ပါက၊ တည်းဖြတ်သူများနှင့် IDE များတွင် အဆင်ပြေသောကိရိယာများစွာရှိသည်။ pom.xml သို့ အဖြစ်အများဆုံး ပုံမှန်ပြောင်းလဲမှုကား အဘယ်နည်း။ ပရောဂျက်ဗားရှင်းများနှင့် မှီခိုမှုများတွင် ပြောင်းလဲမှုများရှိသည်ဟု ကျွန်ုပ်တို့ယုံကြည်သည်။ တစ်စုံတစ်ယောက်သည် ဤကိစ္စကို ငြင်းခုံချင်ပေလိမ့်မည်၊ သို့သော် ဤသည်မှာ ကျွန်ုပ်တို့နှင့် အတိအကျပင်။ အကြောင်းရင်းမှာ kernel နှင့်အတူ၊ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ကိုယ်ပိုင်စာကြည့်တိုက်များစွာကို တစ်ပြိုင်နက်ဖန်တီးနေပြီး တည်ဆောက်ခြင်းနှင့် စမ်းသပ်ခြင်းရလဒ်များ၏ အဆက်မပြတ်ပြန်လည်ထုတ်လုပ်နိုင်စေရန်အတွက် လျှပ်တစ်ပြက်ရိုက်ချက်များကို အသုံးပြုခြင်းသည် ကျွန်ုပ်တို့အတွက် အဆင်ပြေသောချဉ်းကပ်ပုံမပေါ်သောကြောင့်ဖြစ်သည်။ ထို့ကြောင့်၊ တည်ဆောက်မှုတစ်ခုစီတိုင်းရှိ ပရောဂျက်များတွင် ဗားရှင်းနံပါတ်ကို မြှင့်တင်ရန် လိုအပ်ပါသည်။
ထို့အပြင်၊ အခါအားလျော်စွာ၊ ဆော့ဖ်ဝဲရေးသားသူတစ်ဦးသည် ၎င်း၏ကိုယ်ပိုင်စာကြည့်တိုက်တစ်ခုတည်ဆောက်ရန်နှင့် မှီခိုမှုအားလုံးနှင့်ဆိုင်သော ၎င်း၏လုပ်ဆောင်နိုင်စွမ်းကို စစ်ဆေးရန် လိုအပ်ပြီး ၎င်းတို့အားလုံး၏ဗားရှင်းကို သူကိုယ်တိုင်ပြောင်းလဲရန် လိုအပ်သည်။
ကနဦးဖြေရှင်းချက်
ထိုသို့သော မကြာခဏ နှင့် ဗားရှင်း အများအပြား ပြောင်းလဲမှု နှင့်အတူ၊ ကျွန်ုပ်သည် CI အတွင်း လုပ်ငန်းစဉ်ကို ရိုးရှင်းစေပြီး အလိုအလျောက် လုပ်ဆောင်လိုပါသည်။ ဤနေရာတွင် အဆင်ပြေသော၊ လူသိများသော ပလပ်အင်တစ်ခုသည် ကယ်တင်ရာရောက်ပါသည်။ ဗားရှင်း-maven-ပလပ်အင် - ၎င်းကိုချိတ်ဆက်ပြီးဖွင့်ပါ။
mvn -N ဗားရှင်းများ-သတ်မှတ် -DnewVersion=2.0.1
Maven သည် ဖြစ်သင့်သည်အတိုင်း အရာအားလုံးကို လုပ်ဆောင်ပေးလိမ့်မည်- ၎င်းသည် ဗားရှင်းအားလုံးကို အစားထိုးပြီး အထက်မှအောက်သို့ လည်ပတ်သွားမည်ဖြစ်သည်။ ယခု ကျန်ရှိနေသည့်အရာအားလုံးသည် ဆွဲတင်တောင်းဆိုမှုကို မြှင့်တင်ရန်ဖြစ်သည်၊ လုပ်ဖော်ကိုင်ဖက်များသည် အပြောင်းအလဲများကို ပြန်လည်သုံးသပ်မည်ဖြစ်ပြီး သင်သည် အမြန်အသင်းတွင် ပါဝင်နိုင်သည်။ မြန်မြန်? ဘယ်လိုပဲနေပါစေ။ နှစ်သိန်း pom.xml ပြန်လည်သုံးသပ်ရန်၊ ၎င်းသည် ကုဒ်ကို ထည့်မတွက်ပါ။ ထို့အပြင်၊ ဤကဲ့သို့သော ပြောင်းလဲထားသောဖိုင်အများအပြားနှင့် ပေါင်းစပ်ပဋိပက္ခများမှ ကင်းဝေးမည်မဟုတ်ပါ။ ဤနေရာတွင် မှတ်သားထားသင့်သည်မှာ CI လုပ်ငန်းစဉ်တွင်၊ လုပ်ဆောင်နိုင်စွမ်းပြောင်းလဲမှုများနှင့်အတူ ဗားရှင်းပြောင်းလဲမှုများသည် သီးခြားစီမဟုတ်ဘဲ တစ်နည်းနည်းဖြင့် ဖြစ်ပေါ်လာကြောင်း ဤနေရာတွင် သတိပြုသင့်သည်။
အသစ်သောအင်္ဂါရပ်များ
ခဏတာ ငြိမ်သက်ပြီး ကိုယ့်ကိုကိုယ် နှုတ်ထွက်ပြီး ယောက်ျားတွေ မရောက်မချင်း ဒီအတိုင်းနေခဲ့တယ်။
mvn -Drevision=2.0.0 သန့်ရှင်းသော ပက်ကေ့ချ်
စနစ်ပိုင်ဆိုင်မှုတန်ဖိုးများသည် သတ်မှတ်ထားသောတန်ဖိုးများထက် ဦးစားပေးပါသည်။ဂုဏ်သတ္တိများ>.
မိဘ
4.0.0
org.apache
apache
၀.၁.၀.၁
org.apache.maven.ci
ci-မိဘ
ပထမဆုံး CI က အဆင်ပြေတယ်။
${revision}${sha1}${ပြောင်းလဲမှုစာရင်း}
...
1.3.1
-SNAPSHOT
သားစဉ်မြေးဆက်
4.0.0
org.apache.maven.ci
ci-မိဘ
${revision}${sha1}${ပြောင်းလဲမှုစာရင်း}
org.apache.maven.ci
ci-ကလေး
...
အကယ်၍ သင်သည် ဗားရှင်း 2.0.0-SNAPSHOT ကို တည်ဆောက်လိုပါက၊ ၎င်းကို အသုံးပြုပါ။
mvn -Drevision=2.0.0 သန့်ရှင်းသော ပက်ကေ့ချ်
ထုတ်ဝေလိုပါက၊ SNAPSHOT ကို ပြန်လည်သတ်မှတ်ပါ။
mvn -Dchangelist= သန့်ရှင်းသော အထုပ်
*အထက်ပါဥပမာများကို ကူးယူဖော်ပြပါသည်။
ကြမ်းတမ်းသော အဖြစ်မှန်
အားလုံးကျန်းမာပြီး စိတ်ကျေနပ်မှုခံစားရဖို့ အချိန်ကျပြီ၊ ဒါပေမယ့် မဟုတ်ဘူး ။ repository တွင်ထုတ်ဝေထားသော artifacts ၏ဖော်ပြချက်များတွင် ၎င်းကို အစားထိုးမည်မဟုတ်သောကြောင့် install နှင့် deploy အတွက် ဤနည်းလမ်းသည် အလုပ်မဖြစ်နိုင်ပါ။ ${revision} ၎င်း၏အဓိပ္ပာယ်နှင့် maven သည်၎င်း၏အရာအားလုံးကိုနားလည်နိုင်တော့မည်မဟုတ်ပါ။
org.apache
apache
${revision}
ဥမင်တစ်ခုရဲ့အဆုံးမှာ အလင်းရောင်တစ်ခု
ပြဿနာရဲ့ အဖြေကို ရှာဖို့ လိုတယ်။ အခြေအနေကို ကယ်တင်နိုင်ခဲ့သည်။
ပရောဂျက်သို့ ပလပ်အင်တစ်ခုထည့်ခြင်း။
org.codehaus.mojo
flatten-maven-plugin
၀.၁.၀.၁
မှန်ပါတယ်။
ဖြေရှင်းချက်CiFriendliesOnly
ပြား
လုပ်ငန်းစဉ်-အရင်းအမြစ်များ
ပြား
flatten.clean
သန့်ရှင်း
သန့်ရှင်း
Done!
ပျော်ရွှင်စရာ ကုန်ဆုံးပါစေ။
ယခုမှစ၍ ပရောဂျက်တစ်ခုလုံး၏ ဗားရှင်းကို ပြောင်းလဲရန်နှင့် ၎င်းနှင့်ပတ်သက်သည့် မှီခိုမှုအားလုံးကို အသိပေးရန်အတွက်၊ ကျွန်ုပ်တို့သည် ဒြပ်စင်ကို တည်းဖြတ်ရန် လိုအပ်ပါသည်။ပြန်လည်စစ်ဆေးကြည့်ရှုခြင်း> အမြစ်၌သာ pom.xml. တူညီသောပြောင်းလဲမှုနှင့်အတူ ဤဖိုင်တစ်ရာ သို့မဟုတ် နှစ်ခုသည် ပြန်လည်သုံးသပ်ခြင်းသို့ ရောက်ရှိမည်မဟုတ်သော်လည်း တစ်ခုဖြစ်သည်။ ကောင်းပြီ၊ သုံးစရာ မလိုဘူး။ ဗားရှင်း-maven-ပလပ်အင်.
source: www.habr.com