เปลี่ยน Default Local Repository ของ Maven กัน

Maven คือ Software Project Management tool นักพัฒนาก็จะคุ้นเคยกัน การสร้าง Maven Project ใหม่ทุกครั้งที่มีการเรียกใช้ dependencies ใหม่ที่ยังไม่เคยมีการเรียกใช้กับ Project ก่อนหน้ามาก่อน Maven ก็จะไป Downloads มาจัดเก็บใน Local Drive ในเครื่องของเราให้เองโดยอัตโนมัติ และถ้าเป็น dependencies ที่เคยเรียกใช้งานกับ Project ที่เคยเขียนมาแล้วละ สังเกตุใหม่ว่าทำไม Project ถึงได้ Download dependencies เข้า Project ได้รวดเร็วดีจัง เพราะ Maven ทำ Cache Repository ในเครื่องเอาไว้ให้แล้วก็ Download dependencies มาเก็บไว้ใน Local นั้นเอง นานวัน Local Repository ก็มีขนาดใหญ่ขึ้นโดยไม่ทันสังเกตุ จะรู้ตัวอีกทีก็ตอนที่ Drive C: (สำหรับ Windows) แจ้งเตือนว่า Drive Master หรือ Drive C: ของเราเหลือพื้นที่น้อยเกินไปแล้ว มีผลให้การทำงานจอง Software ทำงานช้าลง

ตามหาตัวทำให้ Drive C: เต็ม

สำหรับผู้ที่มีทักษะในการใช้งาน Computer สักหน่อยก็อาจจะมีวิธีจัดการหาวิธีตามหาสิ่งที่ทำให้ Drive เต็มได้ แต่สำหรับตัวผมเองแล้วก็ยังไม่มีวิธีจะแก้ปัญหานี้เลย ไปเจอ Software “FolderSize” ค่อนข้างดีใช้งานง่าย และก็ทำให้ผมเจอตนต่อที่ทำให้ Drive C: ของผมแดงเข้าแล้ว โดย default ของ maven จะ Set Local Repository ไว้ที่ drive Users เครื่องที่ใช้ Signin เข้า Computer เป็นปกติ ก็จะเก็บไว้ที่ “C:\Users\PoolPC\.m2\repository” ข้างในก็จะมี Folder ย่อย ๆ อีกเพียบ

Image for post
Image for post
เครื่องผมเองใช้พื้นที่ในการเก็บเกือบ ๆ 5 GB.

เปลี่ยน Local Repository ไปเก็บที่ Drive อื่นแทน

IDE ที่ผมใช้ก็จะเป็น Eclipse Java EE IDE (Version: Luna Service Release 2 (4.4.2)) ซึ่งจะมี Build in Maven มากับตัว IDE แล้วแต่จะยังใช้ setting ที่เป็น default คือเก็บอยู่ที่ drive “C:\Users\PoolPC\.m2\repository” เพื่อความสมบูรณ์ ติดตั้ง maven ในเครื่องก็จะดีกว่า

  1. เปิด Eclipse IDE เข้าไปที่ window -> preference -> maven เพื่อเปลี่ยน Launch Maven
Image for post
Image for post

2. ไปเปลี่ยน User settings ให้ใช้ setting.xml ที่เราใส่ Local Repository ใหม่ไว้ ไฟล์ setting.xnl จะอยู่ที่ drive ที่ติดตั้ง maven ไว้ C:\apache-maven-3.5.2\conf\setting.xml และให้เปิด comment config
<localRepository>{new local repositry path}</localRepository> จากนั้นให้ Browse File setting.xml ที่แก้ค่า config ใหม่แล้ว กด “Update Settings” อีก Eclipse ก็จะ update config ค่าใหม่ที่เราตั้งค่าไว้แทนที่ ค่า config เดิม

3. ลองทำการ Update Maven Project ของเราอีกครั้ง maven ก็จะเริ่มทำการ Download dependencies มาเก็บที่ Local Repo ใหม่ที่เราได้ config ไว้แล้ว เมื่อ Download เสร็จก็ให้กลับไป Delete Default Local Repository เดิมได้เลย เราก็จะได้ พื้นที่ Drive C: กลับมาดังเดิม (ถ้าไม่ต้องการ Download dependencies ใหม่หมดก็ Move dependencies จาก Default มาใส่ที่ใหม่ ก็จะช่วยย่นระยะเวลาได้ครับ)

หากติดปัญหา หรือมีข้อสงสัย Comment ทิ้งไว้ครับ

Written by

Senior Developer @Telecom, Full Stack Developer [Subscribe Me @poolsawat.com]

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store