🔎 ShowPackage
显示指定包的详细信息(版本、依赖、安装位置等),等价于 composer show package/name。
何时使用
- 📋 排查某个已安装包的当前版本与来源。
- 🔍 确认包是否被放弃维护(abandoned)。
- 🧩 查看某个包自身的依赖列表。
签名
go
func (c *Composer) ShowPackage(packageName string) (string, error)参数
| 参数 | 类型 | 说明 |
|---|---|---|
packageName | string | 要显示信息的包名 |
返回值
| 值 | 类型 | 说明 |
|---|---|---|
| 输出 | string | composer show pkg 的标准输出 |
| 错误 | error | 获取包信息过程中发生错误时返回 |
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.New(composer.DefaultOptions())
if err != nil {
log.Fatalf("初始化失败: %v", err)
}
output, err := comp.ShowPackage("symfony/console")
if err != nil {
log.Fatalf("获取包信息失败: %v", err)
}
fmt.Println("包信息:", output)
}进阶
结构化结果
需要字段化数据时改用 ShowPackageInfo,它内部执行 composer show pkg --format=json 并解析为 *PackageInfo。
指定格式
ShowPackageWithFormat(packageName, format) 可指定 json / text 输出格式:
go
output, err := comp.ShowPackageWithFormat("symfony/console", "json")🔍 相关方法
ShowPackageInfo:结构化包信息。ShowDependencyTree:以树形查看包的依赖链。