• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# TS接口文件生成工具开发说明
2
3## 工具代码框架介绍
4
5ts工具框架由C++语法解释器和代码生成器两部分组成。C++语法解释器解析用户输入的.h文件内容,通过C++语法解析,将文件内容分解为类、方法、入参、成员属性等元素;代码生成器根据从语法解析器得到的这些元素,转换为对应的typescript语法的接口、方法、参数代码,生成.ts文件。
6
7## 工具开发
8
9### 可执行文件编译说明
10
11#### 环境说明
12
13系统:建议Ubuntu 20.04或者Windows 10
14
15#### 开发步骤
16
17##### Linux
18
19<span id="linux1">**1.生成napi_generator程序**</span>
20
211.1 安装typescript:在napi_generator/src目录下执行命令:
22
23	npm i typescript
24
251.2 安装stdio:在napi_generator目录下执行命令:
26
27	npm i stdio
28
291.3 安装pkg : 在napi_generator目录下执行命令:
30
31	sudo npm i -g pkg
32
331.4 打包三个版本 : 执行命令:
34
35	pkg .
36
37执行以上步骤后,即可在napi_generator目录下生成Windows、linux、mac系统下的可执行程序:
38
39	napi_generator-win.exe、napi_generator-linux、napi_generator-macos
40
411.4.1 (可选步骤) 根据需求打包指定系统下的可执行文件。若想只打包windows系统下可执行文件,可执行命令:
42
43	pkg -t node14-win . -o napi_generator-win.exe
44
45若想只打包linux系统下可执行文件,可执行命令:
46
47	pkg -t node14-linux . -o napi_generator-linux
48
49若想只打包macos系统下可执行文件,可执行命令:
50
51	pkg -t node14-macos . -o napi_generator-macos
52
53备注:参数-t为指定系统,参数-o为指定可执行文件名称。
54
55**2 生成header_parser程序**
56
572.1 安装python库 CppHeaderParser,在header_parser/src_code中下载CppHeaderParser.zip,解压后替换本地Python文件夹中CppHeaderParser(如 /usr/local/lib/python3.8/dist-packages/CppHeaderParser)目录下的全部文件
58
59[下载链接1](http://ftpkaihongdigi.i234.me:5000/sharing/kBG1c7CvT)
60
61[下载链接2](http://ftp.kaihong.com:5000/sharing/kBG1c7CvT)
62
63[下载链接3](http://ftp.kaihongdigi.com:5000/sharing/kBG1c7CvT)
64
652.2 安装 pyinstaller
66
67	sudo pip install pyinstaller
68
692.3 将python脚本打包成独立可执行文件
70进入 napi_generator/src/tsGen 目录后执行如下命令:
71
72	sudo pyinstaller -F header_parser.py
73
74打包后的可执行文件在dist目录中
75./src/tsGen/dist/header_parser
76
77##### Windows
78
79**1.生成napi_generator程序**
80
811.1 安装typescript:使用管理员身份在napi_generator/src目录下执行命令:
82
83	npm i typescript
84
851.2 安装stdio:使用管理员身份在napi_generator目录下执行命令:
86
87	npm i stdio
88
891.3 安装pkg : 使用管理员身份在napi_generator目录下执行命令:
90
91	npm i -g pkg
92
931.4 打包三个版本 : 使用管理员身份执行命令:
94
95	pkg .
96
97执行以上步骤后,即可在napi_generator目录下生成Windows、linux、mac系统下的可执行程序:
98
99	napi_generator-win.exe、napi_generator-linux、napi_generator-macos
100
1011.4.1(可选步骤)根据需求打包指定系统下的可执行文件。若想只打包windows系统下可执行文件,可执行命令:
102
103	pkg -t node14-win . -o napi_generator-win.exe
104
105若想只打包linux系统下可执行文件,可执行命令:
106
107	pkg -t node14-linux . -o napi_generator-linux
108
109若想只打包macos系统下可执行文件,可执行命令:
110
111	pkg -t node14-macos . -o napi_generator-macos
112
113**2.生成header_parser程序**
114
1152.1 安装python库 CppHeaderParser,在header_parser/src_code中下载CppHeaderParser.zip,解压后替换本地Python文件夹中CppHeaderParser(如 C:\Python310\Lib\site-packages\CppHeaderParser)目录下的全部文件
116
117[下载链接1](http://ftpkaihongdigi.i234.me:5000/sharing/kBG1c7CvT)
118
119[下载链接2](http://ftp.kaihong.com:5000/sharing/kBG1c7CvT)
120
121[下载链接3](http://ftp.kaihongdigi.com:5000/sharing/kBG1c7CvT)
122
1232.2 安装 pyinstaller
124
125	pip install pyinstaller
126
1272.3 将python脚本打包成独立可执行文件
128进入 napi_generator/src/tsGen 目录后执行如下命令:
129
130	pyinstaller -F header_parser.py
131
132打包后的可执行文件header_parser.exe在dist目录中
133./src/tsGen/dist/header_parser.exe
134
135### IntelliJ 插件开发说明
136
137具体的插件开发步骤,可以左键单击以下链接了解:
138
139[IntelliJ插件开发说明](https://gitee.com/openharmony/napi_generator/blob/master/hdc/ts/ts_IntelliJ_plugin/docs/DEVELOP_ZH.md)