gobuild

package module
v0.7.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2019 License: MIT Imports: 12 Imported by: 1

README

gobuild Build Status Go version

gobuild 是一个简单的 Go 代码热编译工具。 会实时监控指定目录下的文件变化(重命名,删除,创建,添加),并编译和运行程序。

命令行语法:
gobuild [options] [dependents]

options:
 -h    显示当前帮助信息;
 -v    显示 gobuild 和 Go 程序的版本信息;
 -r    是否搜索子目录,默认为 true;
 -i    是否显示被标记为 IGNORE 的日志内容,默认为 false,即不显示;
 -o    执行编译后的可执行文件名;
 -x    传递给编译程序的参数;
 -ext  需要监视的扩展名,默认值为"go",区分大小写,会去掉每个扩展名的首尾空格。
       若需要监视所有类型文件,请使用 *,传递空值代表不监视任何文件;
 -main 指定需要编译的文件,默认为""。

dependents:
 指定其它依赖的目录,只能出现在命令的尾部。
常见用法:
 // 监视当前目录下的文件,若发生变化,则触发 go build -main="*.go"
 gobuild

 // 监视当前目录和 ~/Go/src/github.com/issue9/term 目录下的文件,
 // 若发生变化,则触发 go build -main="main.go"
 gobuild -main=main.go ~/Go/src/github.com/issue9/term
支持平台:

平台支持依赖 colorsfsnotify 两个包, 目前支持以下平台:Windows, Linux, OSX, BSD。

安装
go get github.com/caixw/gobuild
版权

本项目采用 MIT 开源授权许可证,完整的授权说明可在 LICENSE 文件中找到。

Documentation

Index

Constants

View Source
const (
	LogTypeSuccess int8 = iota + 1
	LogTypeInfo
	LogTypeWarn
	LogTypeError
	LogTypeIgnore
)

日志类型

Variables

This section is empty.

Functions

func Build

func Build(logs chan *Log, mainFiles, outputName, exts string, recursive bool, appArgs string, dir ...string) error

Build 执行热编译服务。

logs 日志输出通道 mainFiles 为 go build 最后的文件参数,可以为空,表示当前目录; outputName 指定可执行文件输出的文件路径,为空表示默认值; exts 指定监视的文件扩展名,为空表示不监视任何文件,* 表示监视所有文件; recursive 是否监视子目录; appArgs 传递给程序的参数; dir 表示需要监视的目录,至少指定一个目录,第一个目录被当作子目录,将编译其下的文件。

Types

type ConsoleLogs

type ConsoleLogs struct {
	Logs chan *Log
	// contains filtered or unexported fields
}

ConsoleLogs 将日志输出到控制台

func NewConsoleLogs

func NewConsoleLogs(showIgnore bool) *ConsoleLogs

NewConsoleLogs 声明 ConsoleLogs 实例

func (*ConsoleLogs) Stop

func (logs *ConsoleLogs) Stop()

Stop 停止输出

type Log

type Log struct {
	Type    int8
	Message string
}

Log 日志类型

Directories

Path Synopsis
一个简单的 Go 语言热编译工具。
一个简单的 Go 语言热编译工具。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL