Spesifikasi perpustakaan dua pihak
1. [Mandatori] Tentukan GAV untuk mematuhi peraturan berikut:
1) Format ID Kumpulan G: com.{Syarikat/BU}.Barisan Perniagaan.[Barisan Sub-Perniagaan], sehingga 4 peringkat.
Penerangan: {Syarikat/BU} Contohnya: alibaba / taobao / tmall / aliexpress, dsb. BU tahap satu adalah pilihan.
Contoh positif: com taobao .jstorm atau com.alibaba.dubbo.register
2) Format ArtifactID: nama modul barisan Semantik tidak diulang atau ditinggalkan Mula-mula pergi ke pusat gudang untuk mengesahkan.
Contoh: dubbo - klien / fastjson - api / jstorm - alat
3) Versi V: Sila rujuk butiran di bawah.
2 [Mandatori] Kaedah penamaan nombor versi pustaka pihak kedua: nombor versi kecil nombor semakan
1) Nombor versi utama Nombor versi utama: Apabila pengubahsuaian atau penambahan API tidak serasi dibuat Baharu. ciri yang mengubah arah produk.
2) Nombor versi kecil Nombor versi kecil: dianggap sebagai tambahan fungsi yang serasi ke belakang (kelas baharu, antara muka, dsb.).
3) Nombor semakan Nombor semakan: Pembetulan pepijat, peningkatan fungsi tanpa mengubah suai tandatangan kaedah dan keserasian API dikekalkan.
Nota: Nombor versi permulaan mestilah: 1.0.0, bukan 0.0.1
3 [Mandatori] Aplikasi dalam talian tidak bergantung pada versi SNAPSHOT (kecuali untuk pakej keselamatan yang dikeluarkan secara rasmi); digunakan RELEASENombor versi dinaik taraf sebanyak +1, dan nombor versi tidak dibenarkan untuk ditimpa dan dinaik taraf Anda mesti pergi ke gudang pusat untuk pengesahan.
Nota: Tidak bergantung pada versi SNAPSHOT memastikan ketidakupayaan keluaran aplikasi. Selain itu, ia juga boleh mempercepatkan pembungkusan dan pembinaan semasa penyusunan.
4. [Mandatori] Penambahan atau peningkatan perpustakaan pihak kedua akan memastikan keputusan timbang tara pakej balang lain kecuali titik fungsi tidak berubah. Sekiranya terdapat perubahan, ia mesti dinilai dan disahkan dengan jelas. Adalah disyorkan untuk membandingkan maklumat sebelum dan selepas kebergantungan : selesaikan Jika keputusan timbang tara tidak konsisten, maka gunakan perintah kebergantungan : pokok untuk mengetahui perbezaan dan melaksanakannya. < tidak termasuk pakej balang.
5. [Mandatori] Pustaka pihak kedua boleh menentukan jenis penghitungan, dan parameter boleh menggunakan jenis penghitungan, tetapi nilai pulangan antara muka tidak dibenarkan menggunakan jenis penghitungan atau objek POJO yang mengandungi jenis penghitungan.
6 [Mandatori] Apabila bergantung pada kumpulan perpustakaan pihak kedua, pembolehubah versi bersatu mesti ditakrifkan untuk mengelakkan ketidakkonsistenan nombor versi.
Nota: Bergantung pada springframework - core, - context, - beans Semuanya adalah versi yang sama Anda boleh menentukan pembolehubah untuk menyimpan versi: ${ spring }.
7 [Wajib] Dilarang mempunyai GroupId yang sama dan ArtifactId yang sama tetapi berbeza
Versi dalam kebergantungan pom sub-projek.Nota: Apabila menyahpepijat secara setempat, nombor versi yang ditentukan oleh setiap sub-projek akan digunakan, tetapi apabila digabungkan menjadi perang, hanya satu nombor versi boleh muncul dalam direktori lib akhir. Terdapat preseden di mana penyahpepijatan luar talian adalah betul tetapi masalah berlaku apabila dikeluarkan dalam talian.
8 [Disyorkan] Letakkan pengisytiharan kebergantungan dalam semua fail pom dalam blok penyata >
Nota: <dependencyManagement > hanya mengisytiharkan versi dan tidak melaksanakan pengenalan. Dan < tanggungan > semua tanggungan yang diisytiharkan dalam<
9 [Cadangan] Pustaka pihak kedua harus cuba untuk tidak mempunyai item konfigurasi, dan sekurang-kurangnya jangan menambah item konfigurasi lagi.
10 [Rujukan] Untuk mengelakkan konflik pergantungan apabila menggunakan perpustakaan pihak kedua, penerbit perpustakaan pihak kedua harus mengikut prinsip berikut:
1) Prinsip kesederhanaan dan kebolehkawalan. Alih keluar semua API dan kebergantungan yang tidak diperlukan, termasuk API Perkhidmatan sahaja, objek model domain yang diperlukan, kelas Util, pemalar, penghitungan, dsb. Jika anda bergantung pada perpustakaan pihak kedua yang lain, cuba perkenalkannya dengan disediakan, supaya pengguna perpustakaan pihak kedua boleh bergantung pada nombor versi tertentu tidak ada pelaksanaan log yang khusus dan anda hanya bergantung pada rangka kerja log .
2) Prinsip kebolehkesanan yang stabil. Perubahan dalam setiap versi harus direkodkan, siapa yang mengekalkan pustaka pihak kedua dan di mana kod sumber berada, semuanya perlu mudah diakses. Tingkah laku perpustakaan pihak kedua awam tidak seharusnya berubah melainkan pengguna secara aktif meningkatkan versi.