扩展包(x/)
边缘业务适配器放在 x/ 目录,与主库同一 go.mod。只需:
go get gitcode.com/harbor-labs/harbor@v1.1.0
import 路径仍为 gitcode.com/harbor-labs/harbor/x/...;未在 SubApp 中引用的包不会进你的编译依赖图,但主库 go.mod 会带上这些 SDK(按需注册即可)。
| 旧 import |
新 import |
.../provider/pay |
gitcode.com/harbor-labs/harbor/x/pay |
.../provider/ocr |
gitcode.com/harbor-labs/harbor/x/ocr |
.../provider/mqtt |
gitcode.com/harbor-labs/harbor/x/mqtt |
.../provider/rabbitmq |
gitcode.com/harbor-labs/harbor/x/rabbitmq |
.../provider/socketio |
gitcode.com/harbor-labs/harbor/x/socketio |
.../provider/storage |
gitcode.com/harbor-labs/harbor/x/storage |
.../provider/captcha |
gitcode.com/harbor-labs/harbor/x/captcha |
.../provider/clickhouse |
gitcode.com/harbor-labs/harbor/x/clickhouse |
业务仓示例:
import (
"gitcode.com/harbor-labs/harbor"
"gitcode.com/harbor-labs/harbor/x/pay"
"gitcode.com/harbor-labs/harbor/x/storage"
)
func (a *SubApp) ServiceProviders() []foundation.ServiceProvider {
return []foundation.ServiceProvider{
&pay.PayServiceProvider{},
&storage.StorageServiceProvider{},
}
}
contract/pay 仍在主库(L0 契约,无重依赖)。