我目前正在使用fresh来重建和重新启动网络服务器,每次更改我的项目中的任何源文件。
它工作正常。但是,一段时间后会在 pkg 目录中创建文件。这导致刷新不再发生,原因是不是获取源文件(.go 文件)来构建二进制文件,而是获取 .a 文件。如何避免此功能?
添加信息:
文件:与main.go同级的runner.conf
root: .
tmp_path: ./tmp
build_name: bin/app.bin
build_log: runner-build-errors.log
valid_ext: .go, .tpl, .tmpl, .html
build_delay: 600
colors: 1
log_color_main: cyan
log_color_build: yellow
log_color_runner: green
log_color_watcher: magenta
log_color_app:
ignore_dirs: ./pkg
根本不工作:
13:39:48 watcher | Watching .
13:39:48 watcher | Watching bin
13:39:48 watcher | Watching pkg
13:39:48 watcher | Watching pkg/darwin_amd64
13:39:48 watcher | Watching public
13:39:48 watcher | Watching src
13:39:48 watcher | Watching src/site.org
13:39:48 watcher | Watching src/site.org/application
13:39:48 watcher | Watching src/site.org/application/controllers
13:39:48 watcher | Watching src/site.org/application/controllers/web
13:39:48 watcher | Watching src/site.org/system
定影
最后,我无法让它发挥作用。但是,我使用此插件创建了一个解决方案:
https://github.com/alexnj/SublimeOnSaveBuild
这试图建立在保存上,我已经创建了这个构建系统(称为 GoLang):
{
"shell_cmd": "sh /Users/acruz/go_projects/build_go.sh \"$project_path\"",
"working_dir": "${project_path}"
}
文件 build_go.sh 是:
#!/bin/sh
echo "Removing PKG folder if exists"
rm -Rf pkg
echo "Building application"
go build -o bin/app.bin main.go
echo "Killing application"
killall app.bin
echo "Running application ./bin/app.bin"
echo ""
echo "Debug information:"
echo ""
./bin/app.bin
一个@TODO 将在项目配置中定义二进制文件的名称......但对我来说这行得通。这样做的好处之一是您不必添加 -a 标志,这会使编译过程变慢,并且调试信息将显示在构建窗口中...
相关分类