ปลั๊กอิน Gradle เพื่อช่วยในการทำงานกับโครงการที่ใช้ Java ซึ่งให้การสนับสนุนห้องสมุดพื้นเมือง
ปลั๊กอินนี้เริ่มต้นเพื่อแก้ปัญหาง่ายๆในการสร้างไลบรารีดั้งเดิมที่เก็บไว้ในไฟล์ jar ที่พึ่งพาได้ง่ายขึ้นในโครงการ 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 ถึง (รวม (สำเนา) ไลบรารีดั้งเดิมที่ได้รับการแก้ไขลงในไดเรกทอรีเอาต์พุตที่กำหนดค่า ปลั๊กอินนี้จะแก้ไขเฉพาะไลบรารีพื้นเมืองที่อยู่ในโครงการ classpath เป็นการพึ่งพาของโครงการ (การพึ่งพา Gradle ไม่ว่าจะโดยตรงหรือไม่