
إعداد سهل لأدوات التحليل الثابت لمشاريع Android وJava.
⚠️ يتم صيانة نسخة متفرعة من هذا المشروع على https://github.com/GradleUp/static-analysis-plugin/ يرجى الترحيل باستخدام معرف الإضافة
com.gradleup.static-analysisبدلاً من ذلك.
إضافة Gradel لتطبيق نفس إعدادات أدوات التحليل الثابت بسهولة عبر مشاريع Android أو Java أو Kotlin المختلفة.
تدعم تجنب تكوين المهام بحيث لا يكون لديك أي حمل زائد في سرعة البناء عند استخدام هذه الإضافة!
يدعم Gradel العديد من أدوات التحليل الثابت الشائعة (Checkstyle، PMD، FindBugs، إلخ) عبر مجموعة من الإضافات المدمجة. يتطلب استخدام هذه الإضافات في وحدة Android إعدادًا إضافيًا للتعويض عن الاختلافات بين النموذج الذي تتبعه إضافة Android مقارنةً بنموذج Java.
تهدف إضافة gradle-static-analysis-plugin إلى توفير:
تدعم الإضافة أدوات تحليل ثابت متنوعة لمشاريع Java وKotlin وAndroid:
CheckstylePMDFindBugs [مهمل] [تمت إزالته في Gradle 6.0]SpotBugsDetektAndroid LintKtLintيرجى ملاحظة أن توفر الأدوات يعتمد على المشروع الذي تُطبق عليه الإضافة. لمزيد من التفاصيل، يُرجى الرجوع إلى صفحة الأدوات المدعومة.
لجميع الأدوات قيد الدراسة، يُرجى الرجوع إلى المشكلات.
تستخدم مشاريع Android نموذج Gradel غير متوافق مع نموذج Java الذي تدعمه إضافات أدوات التحليل الثابت المدمجة.
سيؤدي تطبيق gradle-static-analysis-plugin على مشروع Android الخاص بك إلى ضمان إنشاء جميع المهام الضرورية وتكوينها بشكل صحيح
دون أي متاعب إضافية.
قم بتطبيق الإضافة من jCenter كتبعية classpath
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.novoda:gradle-static-analysis-plugin:1.2'
}
}
apply plugin: 'com.novoda.static-analysis'
أو من مستودع إضافات Gradle:
plugins {
id 'com.novoda.static-analysis' version '1.2'
}
سيبدو التكوين النموذجي للإضافة كما يلي:
staticAnalysis {
penalty {
maxErrors = 0
maxWarnings = 0
}
checkstyle { }
pmd { }
findbugs { }
spotbugs { }
detekt { }
lintOptions { }
}
سيؤدي ذلك إلى تمكين جميع الأدوات بإعداداتها الافتراضية وإنشاء مهمة evaluateViolations. سيؤدي تشغيل مهمة ./gradlew evaluateViolations إلى تشغيل جميع الأدوات المكونة وطباعة التقارير إلى وحدة التحكم. لمزيد من التكوينات المتقدمة، يُرجى الرجوع إلى صفحات
الاستخدام المتقدم والأدوات المدعومة.
يتوفر مشروعان نموذجيان لـ Android، أحدهما يتكون من تطبيق عادي - متاح هنا - والآخر يتضمن إعدادًا متعدد الوحدات متاح هنا. يعرض كلا المشروعين النموذجيين إعدادًا يضم Checkstyle وFindBugs وSpotBugs وPMD وLint وKtlint وDetekt.
يتم نشر إصدارات اللقطات من develop تلقائيًا إلى مستودع غير متزامن مع JCenter.
لاستهلاك إصدار لقطة، أضف مستودع maven إضافي كالتالي:
repositories {
maven {
url 'https://dl.bintray.com/novoda-oss/snapshots/'
}
}
يمكنك العثور على أحدث إصدار لقطة باتباع هذا الرابط.
يستخدم هذا المشروع بشكل روتيني من قبل العديد من مشاريع Novoda ومن قبل مشاريع خارجية أخرى دون مشكلات حرجة معروفة.
يمكن العثور على التحسينات المستقبلية وتكاملات الأدوات الجديدة في متتبع المشكلات الخاص بالمستودع.