git-commit-id-maven-plugin هو مكون إضافي مشابه تمامًا لـ Build Number Maven Plugin على سبيل المثال، ولكن نظرًا لأن المكون الإضافي Build Number في الوقت الذي بدأت فيه هذا المكون الإضافي يدعم فقط CVS وSVN، كان لا بد من القيام بشيء ما. اضطررت إلى تطوير إصدار Git من هذا البرنامج الإضافي بسرعة. بالنسبة لأولئك الذين لا يعرفون البرنامج المساعد، فهو يساعدك بشكل أساسي في المهام التالية ويجيب على الأسئلة ذات الصلة
إذا كنت مهتمًا أكثر بحالات الاستخدام المختلفة، فلا تتردد في القراءة عنها بمزيد من التفاصيل.
GitCommitIdMojo.java
كـ Javadocيتوفر المكون الإضافي من Maven Central (انظر هنا)، لذلك لا يتعين عليك تكوين أي مستودعات إضافية لاستخدام هذا المكون الإضافي.
يتوفر وصف تفصيلي لاستخدام المكوّن الإضافي في مستند استخدام المكوّن الإضافي. كل ما عليك فعله في الإعداد الأساسي هو تضمين تعريف البرنامج الإضافي في pom.xml
الخاص بك. بالنسبة للمستخدمين الأكثر تقدمًا، قمنا أيضًا بإعداد دليل لتقديم نظرة عامة موجزة عن التكوينات الأكثر تقدمًا... تابع القراءة!
يتوفر الإصدار الأحدث (5.xx أو الأحدث) عبر
< groupId >io.github.git-commit-id</ groupId >
< artifactId >git-commit-id-maven-plugin</ artifactId >
يتوفر الإصدار الأقدم (4.xx أو أقدم) عبر:
< groupId >pl.project13.maven</ groupId >
< artifactId >git-commit-id-plugin</ artifactId >
الإصدار الحالي هو 9.0.0 (قائمة التغيير).
يمكنك التحقق من الإصدارات المتاحة بزيارة search.maven.org، على الرغم من أن استخدام الإصدار الأحدث هو الخيار الأفضل بشكل واضح.
فيما يلي نظرة عامة على توافق البرنامج المساعد الحالي مع Java
إصدار البرنامج المساعد | مطلوب نسخة جافا |
---|---|
2.1.X | جافا 1.6 |
2.2.X | جافا 1.7 |
3.XX | جافا 1.8 |
4.XX | جافا 1.8 |
5.XX | جافا 11 |
6.XX | جافا 11 |
7.XX | جافا 11 |
8.XX | جافا 11 |
9.XX | جافا 11 |
على الرغم من أن هذا البرنامج المساعد يحاول أن يكون متوافقًا مع كل إصدار من إصدارات Maven، إلا أن هناك بعض القيود المعروفة في إصدارات معينة. فيما يلي قائمة تحاول تحديد الوضع الحالي للفن:
إصدار البرنامج المساعد | الحد الأدنى المطلوب من إصدار Maven |
---|---|
2.1.X | مخضرم 2.2.1 حتى الإصدار 2.1.13؛ Maven 3.1.1 لأي إصدار أحدث 2.1.X |
2.2.X | مخضرم 3.1.1 حتى الإصدار 2.2.3؛ Maven 3.0 لأي إصدار أحدث 2.2.X |
3.XX | مافن 3.0 |
4.XX | مافن 3.0 |
5.XX | مخضرم 3.1.0-ألفا-1 |
6.XX | مخضرم 3.1.0-ألفا-1 |
7.XX | مخضرم 3.2.5 |
8.XX | مخضرم 3.2.5 |
9.XX | مخضرم 3.6.3 |
قلب الجدول إلى maven: يرجى ملاحظة أنه من الناحية النظرية يجب أن يدعم maven 4.X جميع المكونات الإضافية maven 3. تم شحن المكون الإضافي لأول مرة مع دعم maven 3 في الإصدار v2.1.14 (يتطلب إصدار maven 3.1.1). ومن ثم يجب أن يكون الإصدار v2.1.14 هو الإصدار الأول المدعوم. بدءًا من الإصدار 6.XX فقط، تم اختبار هذا المكون الإضافي فعليًا باستخدام الإصدار 4.0.0-alpha-5، ولكن قد لا تعمل بعض الإصدارات منذ أن أعلن Maven 4 أن المكونات الإضافية تتطلب الإصدار Maven 3.2.5 أو إصدار أحدث وهو ما ينطبق فقط على إصدارات البرنامج المساعد 7.0. 0 أو في وقت لاحق.
نسخة مافن | إصدار البرنامج المساعد | ملحوظات |
---|---|---|
مخضرم 3.X | أي | يتطلب البرنامج المساعد على الأقل maven 3.1.0-alpha-1 |
مخضرم 4.X | من v2.1.14 |
نهاية الحياة (EOL) لم تعد إصدارات Maven مدعومة بواسطة Maven ولا هذا البرنامج الإضافي. المعلومات التالية متاحة للرجوع إليها.
نسخة مافن | إصدار البرنامج المساعد | ملحوظات |
---|---|---|
مخضرم 2.0.11 | ما يصل إلى 2.2.6 | Maven 2 هو EOL، git-commit-id-plugin:1.0 لا يعمل - يتطلب إصدار maven 2.2.1 |
مخضرم 2.2.1 | ما يصل إلى 2.2.6 | مافن 2 هو موسوعة الحياة |
مخضرم 3.0.X | ما يصل إلى 4.0.5 | git-commit-id-plugin:2.1.14، 2.1.15، 2.2.0، 2.2.1، 2.2.3 لا يعمل - يتطلب إصدار maven 3.1.1 |
مخضرم 3.0.X | ما يصل إلى 4.0.5 | بالنسبة إلى git-commit-id-plugin 2.2.4 أو أعلى: يعمل، لكنه فشل في تحميل الفئة "org.slf4j.impl.StaticLoggerBinder" |
مخضرم 3.1.0 | أي | git-commit-id-plugin:2.1.14، 2.1.15، 2.2.0، 2.2.1، 2.2.3 لا يعمل - يتطلب إصدار maven 3.1.1 |
مخضرم 3.3.1 | أي | git-commit-id-plugin:2.1.14 لا يعمل |
مخضرم 3.3.3 | أي | git-commit-id-plugin:2.1.14 لا يعمل |
ملاحظة: كمثال - يجب قراءة هذا الجدول على النحو التالي: بالنسبة لـ Maven 3.1.0
يجب أن يعمل any
إصدار مكون إضافي، إلى جانب الإصدارات المدرجة في Notes
التي تحتوي على القيود المذكورة.
إذا كنت تريد حقًا استخدام اللقطات ، فإليك المستودع الذي تم نشرها فيه. لكنني أوصي بشدة باستخدام الإصدارات الثابتة فقط، من Maven Central... :-)
< pluginRepositories >
< pluginRepository >
< id >sonatype-snapshots</ id >
< name >Sonatype Snapshots</ name >
< url >https://s01.oss.sonatype.org/content/repositories/snapshots/</ url >
</ pluginRepository >
</ pluginRepositories >
تتوفر اللقطات الأقدم (الإصدار السابق 5.X) عبر <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
.
إذا كنت ترغب فقط في معرفة ما يمكن للمكون الإضافي فعله، فيمكنك استنساخ المستودع وتشغيله
mvn clean install -Dmaven.test.skip=true && mvn clean package -Pdemo -Dmaven.test.skip=true
تتم صيانة هذا المشروع حاليًا بفضل: @ktoso (المؤسس)، @TheSnoozer
أود أن أتقدم بالشكر الجزيل لبعض هؤلاء الأشخاص، لاقتراحاتهم و/أو طلباتهم التي ساعدت في جعل هذا البرنامج الإضافي شائعًا كما هو اليوم:
أقوم بإصدار هذا البرنامج الإضافي بموجب ترخيص GNU Lesser General Public License 3.0 .
لك الحرية في استخدامه كما يحلو لك، نص الترخيص الكامل مرفق في ملف الترخيص.
أفضل طريقة لطلب الميزات/التحسينات هي عبر قسم المشكلات على GitHub - إنه أفضل من البريد الإلكتروني لأنني لن أخسر عندما يكون لديّ يوم "مليون بريد إلكتروني وارد"، وربما يكون لدى شخص آخر فكرة ما أو يرغب في التصويت لصالحها مشكلتك.
هذا كل الناس! القرصنة سعيدة!