Gradle มันช้า
เอาละ หลายคนน่าจะเจอปัญหาแบบเดียวกันเวลาใช้ Android Studio ทำงาน ว่าทำไมมัน Build ได้ช้าจัง ถึงแม้ว่าจะเปิดใช้ Deamon และ Parallel แล้วก็ตามทำยังไงดีล่ะ
จริงๆแล้วที่ทำได้เองเลยก็คือ ขั้นตอนมาตรฐานที่ทำกันตอนนี้ก็คือ เปิดใช้ Deamon และ Parallel ตามรูปนี้เปิดใช้ Deamon และ Parallel |
แต่ถึงจะเปิดใช้แล้วมันก็เร็วขึ้นมานิดนึง แต่ถ้าจะเอามากกว่านี้ล่ะ
จริงๆแล้ว คงเหลือแต่วิธีที่ต้องไปบอกคนที่ทำ Gradle ว่า "ช่วยทำให้มันเร็วกว่านี้ได้มั้ย" ซึ่งคนทำก็จะบอกว่า "ทำอยู่ และจะทำต่อไป" (คุ้นๆนะประโยคนี้) จึงได้มาเป็น Gradle 2.4 ที่เค้าเครมมาว่าเวลาที่ใช้ Build เร็วขึ้นกว่าเดิม 20% ถึง 40% เลยทีเดียว [1] ส่วนเรื่องอื่นๆที่ปรับปรุงไปอ่านใน Release Notes เอานะของใหม่ออกมา แล้วยังไงต่อ
ก็เอามาใช้สิครับ รออะไรอยู่"แล้วทำยังไง"
OK มีขึ้นตอนนิดหน่อยที่จะทำให้ Android Studio เปลี่ยนมาใช้ Gradle 2.4 ตามนี้เลย
ขั้นแรกให้ดาวน์โหลด Gradle 2.4 มาก่อนเลย แล้วจะได้ ไฟล์ zip มา จากนั้นก็แตกไฟล์ zip นี้ แล้วเอาไปไว้ในที่ที่ถูกต้อง ก็คือถ้าติดตั้ง Android Studio บน Mac ตามปกติ ก็จะอยู่ที่
Applications/Andriod Studio.app/Contents/gradle
ตามรูปที่เห็นจะมี Gradle 2.2.1 อยู่ก่อนแล้ว เอาไว้ด้วยกันเลย ไม่ผิดที่แน่นอน ส่วนใครที่ใช้ Windows ตัว Gradle ก็น่าจะอยู่ ภายใต้ Android Studio เหมือนกันนะ ลองดู
จากนั้นเราก็จะมาเซ็ทให้ตัว Android Studio ใช้งาน Gradle 2.4 ละนะ
เริ่มจาก เปิด Android Studio ขึ้นมา แล้วเข้าไปที่
Preferences -> Build, Execute, Deployment -> Build Tools -> Gradleแล้วปรับ Gradle Home ให้ชี้ไปที่ Gradle 2.4
จากนั้น ก็เปิด Module Settings ขึ้นมา แล้วแก้ Gradle version เป็น 2.4 ซะ ตามรูป
ได้เวลาเปลี่ยนแปลง แรงถึงใจ
เพียงเท่านี้ เวลาเรา Build หรือเวลาที่ Gradle ทำงาน มันก็จะเร็วขึ้น(เค้าบอกมาแบบนี้นะ) หลังจากที่ลองใช้แล้วระยะหนึ่ง พบว่ามันเร็วขึ้นจริงๆ แต่ก็ยังไม่เท่าเจ้าอื่นที่เร็วกว่าอยู่ดี ตรงนี้บางคินอาจจะไม่เข้าใจว่า แค่มันเร็วขึ้นทำไมมันถึงสำคัญ ก็เพราะว่าเวลาทำงานเนี่ยมันก็ต้อง Build ไป Test ไป ถ้ากระบวนการมันต่อเนื่องกัน การทำงานมันก็ลื่นไหลไม่สะดุด แต่ถ้ามีอะไรมาทำให้สะดุด หึหึ เสียรมณ์
โดยรวมแล้วก็ถือเป็นนิมิตหมายที่ดีว่าในเวอร์ชันต่อๆไปมันก็จะเร็วขึ้นได้อีกแน่นอน
อ้างอิง
[1] Gradle 2.4 Release Notes - https://docs.gradle.org/current/release-notes
https://medium.com/@erikhellman/boosting-the-performance-for-gradle-in-your-android-projects-6d5f9e4580b6