从 0 开始安装和运行 Cangjie (仓颉)
标准方法
参照 配置开发环境 的描述,下载 Cangjie for DevEco Studio 插件 DevEco Studio NEXT Developer Beta2-Cangjie Plugin(5.0.3.500)。然后在 DevEco Studio NEXT Developer Beta2 中从本地磁盘安装插件,选择下载好的 "devecostudio-cangjie-plugin-windows-5.0.3.500.zip" 安装。完成后即可直接在 DevEco 中使用。
手动安装
从上述网站下载插件后,解压其中的 "harmonyos-cangjie-sdk-windows.zip",得到以下目录 (部分文件和层级省略):
cangjie
├---build
| ├---linux_ohos_aarch64_llvm
| └---x86_64-w64-mingw32
├---compiler
| ├---bin
| ├---lib
| ├---modules
| ├---runtime
| ├---third_party
| └---tools
└---jslibs-loader
| └---lib
└---musl
└---usr
将解压出来的目录 (包括 cangjie
) 移动到一个专门的位置,比如: "C:\Users\zhongdongy\.cangjie-sdk\5.0\" 下。这个方式和使用插件安装没有区别。
安装完成后,添加以下环境变量:
CANGJIE_HOME
:C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler
PATH
下增加:C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler\runtime\lib\windows_x86_64_llvm
C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler\lib\windows_x86_64_llvm
C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler\bin
C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler\tools\bin
C:\Users\zhongdongy\.cangjie-sdk\5.0\cangjie\compiler\tools\lib
C:\Users\zhongdongy\.cjpm\bin
运行第一个 Cangjie 应用程序
在工作目录中间一个 server.cj
文件,内容如下:
import net.http.*
func start_server(): Unit {
let server = ServerBuilder()
.addr("0.0.0.0")
.port(8080)
.build()
server.distributor.register("/hello", { http_context =>
http_context.responseBuilder.body("Hello Cangjie!")
})
server.serve()
}
main(): Unit {
let fut: Future<Unit> = spawn {
start_server()
}
fut.get()
}
这段代码就是启动一个新线程,创建 HTTP 服务器,监听 8080
端口上来自所有网络的请求,然后对于 URL Path 为 /hello
的请求,响应一个字符串 "Hello Cangjie!"
。
随后在同目录下执行构建命令:
cjc --output server.exe server.cj
此时目录中会出现三个文件:
default.bchir2
: 编译产物中的二进制文件,具体作用暂时不详default.cjo
: 编译的目标文件server.exe
: 编译产生的可执行程序
运行 server.exe
,然后在浏览器访问 "http://127.0.0.1:8080" 可以看到如下的内容: