مكون إضافي Gradle للمساعدة في العمل مع المشاريع المستندة إلى Java التي توفر المكتبات الأصلية الداعمة.
بدأ هذا البرنامج المساعد في حل المشكلة البسيطة المتمثلة في جعل المكتبات الأصلية المخزنة في ملفات جرة التبعية قابلة للاستخدام بسهولة أكبر في مشاريع Gradle ، وهي مشروع اللعبة البسيط الذي كنت أعمل عليه في ذلك الوقت. عندما توقفت عن العمل في مشروع اللعبة ، بدا أن هناك بعض الاهتمام بالمكون الإضافي ، لذا احتفظت به وحاولت تحسينه قليلاً. أنا شخصياً لم أستخدمها منذ بضعة أشهر بعد كتابتها ، ولدي مشاريع أخرى أستخدمها بالفعل ، لذلك أنا أدرج هذا المشروع على أنه مهجور.
ومع ذلك ، سأقوم ببعض المحاولات للحفاظ على بناءها بنجاح تحت اتجاهات Gradle و Groovy الحالية ؛ ومع ذلك ، فإن معظم القضايا المبلغ عنها ربما لن تحظى بالكثير من الاهتمام. اهلا وسهلا بكم لتقديم طلبات السحب للإصلاحات والميزات وسأراجعها وأتصرف عليها في الوقت المناسب.
./gradlew clean build
لإضافة المكون الإضافي إلى مشروعك ، أضف ما يلي إلى ملف build.gradle (أو تحديث كتلة buildscript في حالة وجوده بالفعل):
buildscript {
repositories {
maven {
url " https://plugins.gradle.org/m2/ "
}
}
dependencies {
classpath " gradle.plugin.com.stehno:gradle-natives:0.3.1 "
}
}
apply plugin : " com.stehno.natives "بالتناوب ، يمكنك استخدام كتلة تعريف التوصيل الجديدة في Gradle 2.1 وما بعدها.
plugins {
id ' com.stehno.natives ' version ' 0.3.1 '
}تم تجميع البرنامج المساعد على Java 7.
بدون أي تكوين إضافي ، سيجد المكون الإضافي جميع المكتبات الأصلية في جميع تكوينات compile ووقت runtime ، لجميع المنصات ، وتفريغها في دليل build/natives لمشروعك. يمكنك تكوين هذا السلوك عن طريق إضافة كتلة natives إلى ملف build.gradle . السلوك الافتراضي له التكوين التالي:
natives {
configurations = [ ' compile ' , ' runtime ' ]
platforms = Platform . all()
outputDir = ' natives '
} يمكن أيضًا إضافة إغلاق libraries لتصفية المكتبات التي تم حلها ، مثل:
natives {
configurations = [ ' compile ' , ' runtime ' ]
platforms = Platform . all()
outputDir = ' natives '
libraries {
exclude = [ ' somelib.dll ' ]
}
}هناك مهامتان قدمتهما Plguin:
listNatives - يسرد جميع المكتبات الأصلية التي تم حلها بواسطة التكوين الحالي.includeNatives - يتضمن (نسخ) المكتبات الأصلية التي تم حلها في دليل الإخراج المكون. هذا البرنامج المساعد يحل فقط المكتبات الأصلية الموجودة في Project Classpath كتبعيات للمشروع (تبعيات Gradle ، سواء المباشرة أو التتبع).