发布与部署

发布

参考 Sample of Go1.7 Binary-Only Packages。我们可以提供给用户编译好的 x.a,并且提供一个 dummy 的实现:

package x
import "fmt"
const PI = 3.14
var (
	X = 100
)
func init() {
	fmt.Println("x init")
}
func Add(x, y int) int {
	return x + y
}
type S struct {
	X, Y int
}

用户拿到这个 x.a 后放在 $GOPATH/pkg 相应的 package 下,同时将这个 go 文件放在 $GOPATH/src,这样用户就可以正常使用这个库了。

//go:binary-only-package
package x
const PI = 0.0
var (
	X = 0
)
func Add(x, y int) int {
	return 0
}
type S struct {
	X, Y int
}