Skip to content

spire(天擎)

整体架构

项目架构图

快速启动指南

本指南旨在帮助开发者快速完成仓颉语言环境配置及 Spire 项目的启动流程。所有操作基于 Windows 操作系统进行说明,Mac 与 Linux 平台支持正在开发中。

开发环境配置

1. 安装仓颉语言工具链

请严格遵循以下步骤进行环境准备:

  1. 安装仓颉 SDK
    访问官方安装指南完成基础环境部署(必装组件)。

  2. 配置 VS Code 开发环境

    • 在 Visual Studio Code 插件市场搜索并安装 Cangjie 插件
      VSCode插件安装示意图
    • 下载Cangjie SDK 1.0.0 正式版至本地存储
      SDK下载页面
    • 参考解压路径:D:\cangjie\cangjie
    • 通过插件设置界面完成 SDK 路径配置(操作界面示意图参考下图) SDK路径配置
      SDK路径配置
    • 验证配置有效性后,IDE 解释器即部署完成。
  3. 安装 STDX 依赖

    • 仓颉官方仓库下载标准库 标准库下载页面

    • 解压路径参考:D:\cangjiestdx

    • 配置系统环境变量:

      • 新建变量 CANGJIE_STDX 指向解压目录
        环境变量配置

      • 更新 PATH 变量包含 ${CANGJIE_STDX}

        CANGJIE_STDX环境变量

    • 同时再次检查,确保其他三个核心变量已正确配置

  4. 补充:安装OpenSSL套接字密码库

    1.下载和安装

    由于Spire的JWT认证使用到OpenSSL,若您的计算机上尚未安装,可以参考以下安装教程:

    通过访问OpenSSL官网下载页面,下载对应进行安装的方式比较繁琐复杂,因此我们推荐您直接下载国外技术工作者制作的便捷版安装包

    OpenSSL下载界面

    选择对应您操作系统的版本进行安装,我们推荐您下载含有Light名称表示轻量版的安装包,下载后跟循安装步骤不断进行下一步直至完成即可

    参考安装路径C:\Program Files\OpenSSL-Win64

    OpenSSL安装程序

    2.配置环境变量:

    进入您的控制面板新增系统环境变量

    OpenSSL环境变量1

    OpenSSL环境变量2

    至此,您进入下一步的所有环境准备工作就绪!

项目启动流程

获取源码并构建项目

  1. 克隆项目仓库

    bash
    git clone https://gitcode.com/soulsoft/spire
  2. 创建示例模块

    在项目根目录下新建 demo 子模块,文件结构参考:

    bash
    spire/
    └── demo/
        ├── cjpm.toml          # 配置文件
        └── src/               # 源代码目录
            └── main.cj        # 入口文件
  3. 配置构建参数

    切换到demo路径下,使用code .编辑 cjpm.toml 文件,配置示例如下:

    toml
    [package]
    cjc-version = "1.0.0"
    name = "spire_web_quickstart"
    output-type = "executable"
    version = "1.0.0"
    
    [dependencies]
      spire_web_http = { path = "../spire_web_http" }
      spire_web_hosting = { path = "../spire_web_hosting" }
      spire_web_routing = { path = "../spire_web_routing" }
      spire_extensions_injection = { path = "../spire_extensions_injection" }
  4. 编写代码 修改 main.cj,启动Web主机

    cangjie
    package demo
    
    import spire_web_http.*
    import spire_web_hosting.*
    import spire_web_routing.*
    import spire_extensions_injection.*
    
    main(args: Array<String>): Int64 {
       let builder = WebHost.createBuilder(args)
    
       builder.services.addRouting()
    
       let host = builder.build()
    
       host.useEndpoints { endpoints => 
          endpoints.mapGet("hello") { context => 
             context.response.write("hello cangjie")
          }
       }
    
       host.run()
       return 0
    }
  5. 执行构建命令

    bash
    cjpm update  # 更新依赖
    cjpm build   # 构建项目
    cjpm run     # 启动应用

说明

由于 Cangjie 官方尚未建立中央仓库,当前依赖管理采用本地相对路径方式实现。待中央仓库建立后,文档将会同步更新。

quickstart 项目运行说明

1. 启动 Web 服务模块

进入 spire_web_quickstart 模块目录执行:

bash
cjpm run

控制台输出示例:

bash
info: spire.hosting.lifetime
      Now listening on: http://127.0.0.1:5000
info: spire.hosting.lifetime
      Hosting environment: Production
info: spire.hosting.lifetime
      Content root path: E:\gitcode\spire\spire_web_quickstart
info: spire.hosting.lifetime
      Application started. Press Ctrl+C to shut down.

2. 访问示例站点

在浏览器输入 http://127.0.0.1:5000 即可查看 Spire 博客主页(页面截图参考):
示例站点截图

欢迎使用 Spire,我们诚挚期待您的反馈

温馨提示

如在配置过程中遇到技术问题,建议查阅官方技术文档 或前往开发者社区提交 Issue。我们持续优化文档质量,期待您的宝贵建议。