Tự reload Go application khi save
TIL
488
Go
41
golang
39
Ruby
104
White

Huy Trần viết ngày 19/06/2016

Watch và reload Golang application mỗi khi save

Giống như bên Node chúng ta có nodemon tự động reload lại process mỗi khi lưu file.

Với Go chúng ta có thể dùng gem rerun của Ruby để watch các file *.go rồi chạy lại lệnh go run để reload app. Cách làm:

Lưu đoạn script dưới đây thành file run.sh, để trong thư mục project:

run.sh

RERUN=`which rerun`
if [[ "$RERUN" == "" ]]; then
    printf "\e[33mInstalling gem\e[90m rerun\n"
    gem install rerun
fi
printf "\e[34mWatcher is running...\e[0m\n"
rerun --pattern '**/*.{go}' go run *.go

Cấp quyền execute cho nó:

chmod +x run.sh

Từ giờ mỗi khi làm việc thì chạy lệnh run này trước, và khi một file *.go bất kì được lưu lại, app sẽ tự động được reload luôn:

./run.sh

Đoạn script trên cũng tự cài gem rerun nếu trong máy chưa có luôn.

Lưu ý: Hình như rerun chỉ chạy trên Mac thì phải, với Linux có thể sử dụng inotify, còn trên Windows thì hổng biết :cry:

P/S: Newbie dictionary: dành cho bạn nào thấy khó chịu vì mình cứ chêm mấy từ tiếng anh vào :trollface:

Từ tiếng Anh Nghĩa tiếng Việt
run chạy, tức là chạy cái ứng dụng đó
application chương trình
watch ở đây dùng trong cụm từ: watch files, tức là theo dõi các thay đổi của một file (ví dụ copy, paste, lưu,...)
reload tắt rồi chạy lại một ứng dụng
execute động từ: chạy một ứng dụng

Huy Tran 20-06-2016

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Huy Trần

97 bài viết.
1434 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
144 43
Tại sao phải viết blog kĩ thuật? Có rất nhiều bài viết trên mạng nói về vấn đề tại sao một lập trình viên nên thường xuyên viết các bài blog kĩ thu...
Huy Trần viết hơn 2 năm trước
144 43
White
143 37
(Ảnh) Tiếp tục sêri (Link) lần này, chúng ta sẽ cùng tìm hiểu và mô phỏng lại một chức năng mà mọi người đang bắt đầu sử dụng hằng ngày, đó là chứ...
Huy Trần viết hơn 1 năm trước
143 37
White
96 16
Phần 1: Tự truyện Tui và Toán đã từng là hai kẻ thù không đội trời chung trong suốt hơn mười lăm năm ròng rã. Ngay từ ánh nhìn đầu tiên đã ghét nh...
Huy Trần viết gần 2 năm trước
96 16
Bài viết liên quan
White
18 1
Toán tử XOR có tính chất: + A XOR A = 0 + 0 XOR A = A Với tính chất này, có thể cài đặt bài toán sau với độ phức tạp O(N) về runtime, và với O(1)...
kiennt viết hơn 1 năm trước
18 1
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
97 bài viết.
1434 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!