欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 【quantity】1 创建 crates.io 账号并上传 Rust 库

【quantity】1 创建 crates.io 账号并上传 Rust 库

2025/4/29 8:27:21 来源:https://blog.csdn.net/weixin_43219667/article/details/147551072  浏览:    关键词:【quantity】1 创建 crates.io 账号并上传 Rust 库

第一部分:创建 crates.io 账号

  1. 获取 GitHub 账号
    crates.io 使用 GitHub 账号进行认证,因此你需要:
  • 拥有一个 GitHub 账号(如果没有,请先注册)

  • 确保你的 GitHub 账号邮箱已验证

  1. 登录 crates.io
  • 访问 crates.io

  • 点击右上角的 “Log in with GitHub”

  • 授权 crates.io 访问你的 GitHub 账号

  1. 获取 API Token
  • 登录后,点击右上角你的用户名

  • 选择 “Account Settings”

  • 在 “API Access” 部分,点击 “New Token”

  • 为 token 命名(如 “my-laptop”)

  • 点击 “Create” 生成 token

  • 复制这个 token(它只会显示一次,请妥善保存)

  1. 在本地配置 API Token
    在你的开发机器上运行:
cargo login

然后粘贴你复制的 token 并按回车。

第二部分:准备要发布的库

  1. 创建或检查你的 Cargo.toml
    确保你的 Cargo.toml 文件包含所有必要信息:
[package]
name = "your-library-name"  # 必须是唯一的,全crates.io范围内
version = "0.1.0"          # 遵循语义化版本控制
authors = ["Your Name <your.email@example.com>"]
description = "A short description of your library"
license = "MIT OR Apache-2.0"  # 必须使用SPDX标识符
repository = "https://github.com/yourusername/your-repo"
documentation = "https://docs.rs/your-library-name"
keywords = ["keyword1", "keyword2", "keyword3"]  # 最多5个
categories = ["category-from-list"]  # 可选,从现有分类中选择[dependencies]
# 你的依赖项
  1. 添加文档和元数据
  • 确保你的库有良好的文档:

    • 在主要项目文件顶部添加文档注释:
//! 这里是库级别的文档/// 这里是函数文档
pub fn example() {}
  • 添加 README.md 文件

  • 添加 LICENSE 文件

  1. 验证你的包
    运行以下命令检查是否可以打包:
cargo package

检查是否有警告或错误:

cargo publish --dry-run

第三部分:发布你的库

  1. 发布到 crates.io
    运行发布命令:
cargo publish
  1. 发布后的操作
  • 你的库现在可以在 crates.io 上找到

  • 文档会自动构建并发布到 docs.rs

  • 你可以通过以下命令更新版本:

    • 修改 Cargo.toml 中的版本号

    • 运行 cargo publish 再次发布

第四部分:最佳实践和注意事项

  1. 命名规范
  • 名称必须唯一(先到先得)

  • 只包含字母、数字、- 或 _

  • 建议使用小写字母和连字符

  • 避免使用 Rust 或 cargo 前缀

  1. 版本控制
  • 遵循语义化版本控制 (SemVer)

  • 0.x.y 版本可以随时进行破坏性更改

  • 1.0.0 后要谨慎进行破坏性更改

  1. 维护
  • 及时回复 issue 和 PR

  • 考虑添加 CI/CD 自动化测试和发布

  • 定期更新依赖项

  1. 更新已发布的库
  • 修改 Cargo.toml 中的版本号

  • 提交更改

  • 运行 cargo publish

  1. 无法删除版本
    注意:一旦发布,版本无法删除,只能标记为 “yanked”(撤回):
cargo yank --vers 1.0.0 your-library-name

第五部分:常见问题解决

  1. 名称已被占用
  • 尝试其他变体或添加后缀

  • 如果项目已废弃,可以联系维护者或 crates.io 团队

  1. 发布失败
  • 检查网络连接

  • 确保 token 正确配置

  • 检查 Cargo.toml 是否有错误

  1. 文档构建失败
  • 检查文档注释是否有错误

  • 确保所有公共API都有文档

通过以上步骤,你应该能够成功创建 crates.io 账号并发布你的 Rust 库。发布后,其他开发者可以通过在 Cargo.toml 中添加你的库作为依赖来使用它。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词