包管理

核心概念

  • 模块(Module):单文件夹内的.v文件集合
  • 包(Package):含v.mod文件的项目根目录
  • 安装路径~/.vmodules(可通过VMODULES环境变量覆盖)

包管理命令

命令

功能

示例

v install

从VPM安装包

v install ui

v install --git

从Git仓库安装

v install --git https://github.com/vlang/markdown

v remove

移除已安装包

v remove ui

v update

更新指定包

v update ui

v update

更新所有包

v update

v list

查看已安装包

v list → 输出安装列表

v outdated

检测待更新包

v outdated → 显示可更新包

特殊参数:

v install --once [包名]  # 仅当未安装时执行

创建新包

  1. 初始化项目结构:
v new mypackage
# 输入项目描述/版本/许可证
  1. 验证v.mod文件:
// v.mod 示例
Module {
    name: 'mypackage'
    description: '我的功能包'
    version: '0.1.0'
    license: 'MIT'
    dependencies: []  // 依赖声明
}
  1. 编写模块代码:
// mypackage.v
module mypackage  // 与包名一致

// 公开API
pub fn hello() {
    println('Hello World!')
}

发布到VPM

  1. 创建Git仓库:
git init
git add .
git commit -m "Initial commit"
  1. 推送至GitHub:
git remote add origin https://github.com/用户名/仓库名.git
git push -u origin main
  1. 注册到VPM:
    • 访问 VPM注册页
    • 使用GitHub账号登录
    • 重要:准确填写包名和URL(提交后不可修改)
  1. 添加GitHub标签:
    • vlang
    • vlang-package(增强可搜索性)

依赖管理

在v.mod中声明依赖:

dependencies: [
    'ui',                     // 从VPM安装
    'git:https://github.com/user/repo'  // 从Git仓库安装
]

VPM包名格式为 GitHub用户名.包名(如 alex.markdown