Skip to content

✅ IsInstalled

判断 Composer 是否已安装。

何时使用

当只需要布尔结果(例如安装前检查、运行前确认环境)时使用。它会依次查找 PATH 中的 composer 以及常见安装位置。🎯

签名

go
func (i *Installer) IsInstalled() bool

参数

参数类型说明
该方法无参数

返回值

  • booltrue 表示找到了 composer 可执行文件;false 表示未找到。

示例

go
package main

import (
	"fmt"

	"github.com/scagogogo/composer-skills/pkg/installer"
)

func main() {
	i := installer.DefaultInstaller()
	if i.IsInstalled() {
		fmt.Println("Composer 已安装")
	} else {
		fmt.Println("Composer 未安装,将执行安装")
		_ = i.Install()
	}
}

进阶

  • 实现等价于 _, err := findComposerBinary(); return err == nil,查找位置包括 PATH/usr/local/bin/composer/usr/bin/composer/opt/homebrew/bin/composer。🔍
  • 如需同时拿到路径和版本,使用包级函数 IsComposerInstalled。🚀
  • 这是 InstallWithProgress 内部验证安装是否成功的同一套逻辑。🧩

基于 MIT 许可证发布