使用区块链应用程序构建器 CLI 创建链代码项目

要在使用区块链应用程序构建器 CLI 时创建链代码项目,请从详细规范文件中支架链代码项目。然后,生成的项目包含所需的所有文件。

背景信息

Blockchain App Builder 的 init 命令可初始化并支持现成可用的链代码项目。基于简单输入,init 命令可以生成包含以下功能的复杂链代码项目:
  • 多个资产(模型)及其行为(控制器)
  • 自动生成 CRUD (Create/Read/Update/Delete) 和非 CRUD 方法
  • 自动验证参数
  • 编组/编组参数
  • 透明持久性功能 (Transparent Persistence Capacity,ORM)
  • 调用富查询的能力

生成的项目遵循模型/控制器和修饰符模式,该模式允许将分类帐上维护的资产属性指定为类型字段,并使用特定行为和验证规则进行扩展。这种模式减少了代码行数,这有助于提高可读性和可扩展性。

先决条件

在构建项目之前,必须创建一个输入规范文件。有关更多信息,请参见 Input Specification File

使用 init 命令构建链代码项目

键入 ochain init -h 将列出命令用法及其所有选项。init 命令包含以下选项:
  • --cc/-c:

    链代码项目的名称。默认值为 MyChaincode

  • --lang/l

    脚手架链代码的语言。Blockchain App Builder 支持 Typescript (ts) 和 Go (go)。如果未指定任何选项,则语言默认为 ts

  • --conf/-f--spec

    输入规范文件的路径。Blockchain App Builder 读取输入规范文件,并使用许多辅助工具生成脚手架项目,这有助于减少整体开发工作。充分利用输入规范文件可以显著缩短开发时间。

    规范文件可以采用 yamljson 格式。如果未指定路径,则默认为当前目录。请参见 Input Specification File

  • -- 输出/o

    脚手架链代码项目的输出目录。如果未指定,则会在当前目录中生成脚手架项目。

    输出是一个完全包含的,轻量级的,可扩展的 Typescript 或 Go 链代码项目。

  • --root/r

    仅 Go 有效且必需。Go 链代码的 GOHOME 变量中的根目录。默认值为 example.com

示例
my-mac:~ name$ ochain init --cc MyNewTsProject --lang ts --conf spec.yml

默认值

如果在 ochain init 命令中未指定任何选项,则支架式项目的名称为 MyChaincode,语言为 TypeScript。

MyChaincode.model.ts 文件仅包含一个名为 MyAsset 的资产,其中有一个名为 value 的属性。MyChaincode.controller.ts 文件包含一个控制器,其中包含与 MyAsset 模型对应的 CRUD 方法。

输出

流程完成后,您将拥有一个功能齐全的链代码项目,您可以在本地或远程 Oracle Blockchain Platform 实例中部署该项目。有关创建的文件的详细概述,请参见: 有关基于令牌的项目详细概述,另请参见: