Di Magento 2 (versi stabil apa pun) Anda dapat menjalankan perintah ini bin/magento info:dependencies:show-modules
dan Anda akan mendapatkan file csv di root aplikasi yang dipanggil modules-dependencies.csv
dengan semua dependensi modul yang terlihat seperti ini:
Apa itu ketergantungan Hard dan apa itu Soft dependency? Contoh masing-masing akan membantu.
magento2
module
dependency
Marius
sumber
sumber
Jawaban:
Ada tiga parser dependensi yang berbeda (implementasi dari
Magento\Setup\Module\Dependency\ParserInterface
):Satu-satunya yang membuat perbedaan antara hard dan soft dependency adalah komposer parser (lihat: Magento \ Setup \ Module \ Dependency \ Parser \ Composer \ Json :: extractDependencies () )
Sebuah lembut ketergantungan adalah paket, yang tercantum dalam "menyarankan", sebuah keras ketergantungan paket di "membutuhkan".
Tipe dependensi default sulit , itu berarti dependensi yang ditemukan oleh parser lain selalu sulit (lihat Magento \ Setup \ Module \ Dependency \ Report \ Dependency \ Data \ Dependency :: __ construct () ).
sumber
Penjelasan yang sederhana dan jelas (dari kursus dasar Magento U):
Ketergantungan yang keras
Menyiratkan bahwa modul tidak dapat berfungsi tanpa modul lain yang menjadi sandarannya .
Contoh dependensi keras meliputi:
Magento_AdminNotification
memiliki ketergantungan yang sulit padaMagento_Store
Ketergantungan lembut
Menyiratkan bahwa suatu modul dapat berfungsi tanpa modul lain yang menjadi sandarannya .
Contoh ketergantungan lunak meliputi:
Magento_AdvancedPricingImportExport
memiliki ketergantungan lunakMagento_CatalogImportExport
dengan kode seperti ini:Jika suatu modul menggunakan kode dari modul lain, itu harus menyatakan ketergantungan secara eksplisit.
EDIT: perhatikan bahwa ini juga dijelaskan dengan jelas dalam dokumen resmi: https://devdocs.magento.com/guides/v2.3/architecture/archi_perspectives/components/modules/mod_depend.html
sumber