Ionic Framework

วิธีแก้ปัญหา Error: spawn EACCES ในการทำแอพ Android หลังใช้ Android Studio 3 ขึ้นไป

เรื่องที่เกี่ยวข้อง - Android, Cordova, Ionic

Android Studio 3 ออกมาช่วงปลายปีพอดี ซึ่งทำให้หลายๆ คนได้อัพเดตไปใช้ระบบใหม่ๆ ในการทำงาน โดยเฉพาะนักพัฒนาแอพพลิเคชั่น Android ไม่ว่าจะเป็น Native หรือ Hybrid อย่าง Ionic

แต่ปัญหาหนึ่งที่พลกับพี่น้องพบหลังอัพเดตมาใช้ Android Studio 3.X ก็คือปัญหา Error: spawn EACCES  ตอนพยายาม Build หรือ Run แอพพลิเคชั่นบนระบบ Android ครับ

ด้านล่างเป็น log ที่หลายๆ คนอาจเจอคล้ายๆ กัน

Teerasej-MacBook-Pro:nextflow-ionic-emergency-app teerasejjiraphatchandej$ ionic cordovarun android --device
Running app-scripts build: --platform android --target cordova
[20:56:14] build dev started ...
[20:56:14] clean started ...
[20:56:14] clean finished in 13 ms
[20:56:14] copy started ...
[20:56:14] deeplinks started ...
[20:56:14] deeplinks finished in 21 ms
[20:56:14] transpile started ...
[20:56:16] transpile finished in 2.51 s
[20:56:16] preprocess started ...
[20:56:16] preprocess finished in less than 1 ms
[20:56:16] webpack started ...
[20:56:17] copy finished in 2.69 s
[20:56:22] webpack finished in 5.66 s
[20:56:22] sass started ...
Witout `from` option PostCSS could generate wrong source map or do not find Browserslistconfig. Set it to CSS file path or to `undefined` to prevent this warning
[20:56:23] sass finished in 921 ms
[20:56:23] postprocess started ...
[20:56:23] postprocess finished in 8 ms
[20:56:23] lint started ...
[20:56:23] build dev finished in 9.21 s
> cordova run android --device
ANDROID_HOME=/Users/teerasejjiraphatchandej/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
Error: spawn EACCES

ซึ่งจาก Log Error มันเกี่ยวข้องกับ Permission แน่นอน

แต่หลายๆ คนที่อัพเดตจาก Android Studio เวอร์ชั่นเก่า ต้องมีอันงงเป็นไก่ตาแตก เพราะเมื่อคืนรันได้ ทำไมวันนี้รันไม่ได้

จากการตามสืบ ดันไปลงส่วน Permission ของ Gradle ใน Android Studio ครับ

วิธีแก้ไข

ให้เปิด Terminal ขึ้นมา และรันคำสั่งดังนี้

sudo chmod 755 /Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin/gradle

เรียบร้อยแล้ว ให้ลองรันคำสั่ง ionic cordova build หรือ ionic cordova run android ดูอีกที น่าจะหายแล้วครับ

อ้างอิง – GithubStackOverflow

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save