🚀 New
创建一个新的 Composer 实例,是使用 SDK 的入口。如果未指定可执行文件路径,会自动检测系统中的 Composer;未找到且开启 AutoInstall 时会自动安装。
何时使用
几乎在所有场景下,你都需要先调用 New 拿到一个 *Composer 实例,再调用其上的方法。通常配合 DefaultOptions 使用。
签名
go
func New(options Options) (*Composer, error)参数
| 参数 | 类型 | 说明 |
|---|---|---|
options | Options | 配置项,含可执行文件路径、工作目录、是否自动安装、超时等 |
返回值
| 返回值 | 类型 | 说明 |
|---|---|---|
| 第一返回值 | *Composer | 创建的 Composer 实例 |
| 第二返回值 | error | 检测失败且自动安装失败、或指定路径不存在时返回 |
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
options := composer.DefaultOptions()
options.WorkingDir = "/path/to/project"
comp, err := composer.New(options)
if err != nil {
log.Fatalf("初始化 Composer 失败: %v", err)
}
fmt.Printf("Composer 就绪: %s\n", comp.GetExecutablePath())
}进阶
- 一行完成检测+安装+初始化使用更便捷的 QuickSetup。
- 想跳过自动安装、仅在已安装时使用,把
Options.AutoInstall设为false。 - 实例创建后可随时用 SetWorkingDir 切换工作目录。