จัดการ Flutter หลายเวอร์ชันด้วย fvm (flutter version manager)

ไทย

blog flutter version manager
Flutter and the related logo are trademarks of Google LLC. We are not endorsed by or affiliated with Google LLC.

เมื่อไม่นานมานี้ผมได้มีโอกาสสร้าง MVP ตัวหนึ่งด้วย Flutter และด้วยความที่ส่วนตัวเป็นคนชอบเข้าไปดู ค้นหาโปรเจคทั้งหลายที่มีคนเคยเขียนไว้ใน GitHub เพื่อดูว่า Open Source โปรเจคต่าง ๆ เขามีวิธีการเขียน Widget ที่สามารถนำกลับมาใช้งานใหม่ได้อย่างไรกันบ้าง การจัดการ codebase อย่างไร หรือแอบจิ๊กเอา GitHub Workflow ไฟล์มาปรับในโปรเจคบ้างก็มี แต่เอาละเข้าเนื้อหากันเลย

ตอนนั้นคือผม clone โปรเจคลงมาแล้วลองนำมาเล่นบนเครื่องตัวเองทำให้เจอปัญหาในหลายเรื่องไม่ว่าจะเป็น โปรเจคเก่าไปแล้ว Flutter SDK หรือ dart ในเครื่องมีเวอร์ชันที่ใหม่ไปทำให้การนำมารันทำได้ค่อนข้างยาก รวมถึงการอัพเกรดและดาวน์เกรดเช่นกัน

การอัพเดทและดาวน์เกรดก็มีปัญหาเช่นกัน ถ้าใครเคยลงด้วย Homebrew การอัพเกรดอาจทำให้ Environment path ผิดทำให้ต้องมาเซ็ทใหม่กันอีกรอบเพราะเลขเวอร์ชันเปลี่ยนไป

แล้ว flutter upgrade | downgrade ใช้ไม่ได้เหรอ?
ใช้ได้เช่นกับครับ ถ้าเราสามารถใช้ได้อย่างไม่มีปัญหา แต่ผมลองใช้แล้วติดปัญหาตรงที่ถ้าเกิดเรา downgrade flutter จะเวิร์คกับเวอร์ชันที่อยู่ใน Flutter build release channel เท่านั้น ถ้าต่ำหรือเก่ากว่าหรือระบุเป็นเลขเวอร์ชันไปเลยก็จะไม่ได้ละ

blog flutter version manager1 1

fvm คืออะไร
หากใครเคยใช้ nvm, rbenv, jenv สิ่งนี้คือสิ่งเดียวกันเลยครับ มันจะช่วยให้มี Flutter หลายเวอร์ชันได้ในเครื่องเดียว รวมถึงการจัดการ การสลับไปมาระหว่างเวอร์ชันได้อย่างไร้รอยต่อ (หากใครไม่เคยใช้ nvm สามารถอ่านต่อได้ที่บล็อกนี้ครับ) เพื่อไม่ให้เสียเวลาเรามาดูวิธีการใช้งานดีกว่าครับ

ติดตั้ง fvm
ขั้นแรกก่อนที่จะใช้งานเราจำเป็นต้องติดตั้ง fvm (ต้องมี Homebrew) ก่อนครับ

blog flutter version manager2

เลือกเวอร์ชันของ SDK
หลังจากติดตั้งเสร็จเรียบร้อยแล้ว เรามาเลือกเวอร์ชันของ SDK ที่ต้องการจะติดตั้งโดยการการใช้คำสั่ง fvm releases

blog flutter version manager3

ผมเลือกที่จะติดตั้ง SDK เวอร์ชัน 3.0.3 (stable) และ 2.13.0–0.1.pre(dev) จะต้องพิมพ์คำสั่ง fvm use <version>

ติดตั้ง Flutter SDK
ในการติดตั้ง Flutter SDK จะใช้คำสั่ง flutter install <version>

blog flutter version manager4

เรียกดูเวอร์ชันของ Flutter
เมื่อติดตั้งเสร็จสิ้น เราสามารถดูเวอร์ชันที่ติดตั้งด้วยการใช้คำสั่ง fvm list

blog flutter version manager5

เลือก Global version สำหรับ Flutter SDK
ทำได้ด้วยการใช้คำสั่ง fvm global <version>

blog flutter version manager6

สาเหตุที่จำเป็นต้องเซ็ทค่าไว้เพราะว่าถ้าเกิดเรารันคำสั่ง fvm flutter run และไม่เจอการตั้งค่าของโปรเจคในระดับ local แล้วละก็มันจะ fallback กลับมาที่ global version ครับ

สลับเวอร์ชันในระดับ local หรือระหว่างโปรเจค
สามารถทำได้โดยการใช้คำสั่ง fvm use <version>

blog flutter version manager7

เท่านี้เราก็จะได้ Flutter เวอร์ชัน stable และ dev อยู่ในเครื่องเดียวกันเรียบร้อย ส่วนต่อไปก็เป็น

สร้าง alias สำหรับคนขี้เกียจพิมพ์

blog flutter version manager8

เท่านี้เราก็สามารถใช้คำสั่ง f และ d โดยไม่ต้องพิมพ์เต็มว่า fvm flutter <command>หรือ fvm dart <command> เช่น

blog flutter version manager9
  1. Project
  2. Ancestor directory
  3. Global (Set through FVM)
  4. Environment (Flutter version configured on PATH)

Related Content

  • ทั้งหมด
  • Blogs
  • Insights
  • News
    •   Back
    • Careers
    • Data Science
    • Lifestyle
    • Product
    • Strategy
    • Technology
    • User Experience
    • xPlatform
    • DevOps
    •   Back
    • PointX Products
    • Events
    • Others
    • Leadership
    • Partnership
    • Services & Products
    • Joint ventures
    •   Back
    • Blockchain
    • Finance
    • Tech innovation

Your consent required

If you want to message us, please give your consent to SCB TechX to collect, use, and/or disclose your personal data.

| การเพิกถอนความยินยอม

หากคุณต้องการเพิกถอนการให้ความยินยอมในการเก็บรวบรวม ใช้ และ/หรือเปิดเผยข้อมูลส่วนบุคคล กรุณาส่งคำร้องหาเรา

Vector

Message sent

We have receive your message and We will get back to you shortly.