在 macOS 上使用 C# 编写合约
本文将指导开发者在macOS中配置智能合约的C#开发环境,使用示例代码创建合约项目并完成编译。
安装Visual Studio for Mac
下载 Visual Studio for Mac ,按照屏幕提示进行安装。安装过程中只需勾选基本功能,无需安装 Android / iOS / macOS 等平台组件。
如果勾选了 Android / iOS / macOS 平台,安装时间可能会需要数小时,而且由于网络情况可能会容易失败,所以不建议安装。
新建项目
-
运行 Visual Studio for Mac,新建项目,选择 .NET Standard Library。
-
选择 .NET Standard 2.0 并根据屏幕提示创建项目,命名为test。
-
在解决方案栏中右键单击
依赖项
->管理NuGet包
-
搜索 “neo.smart” ,选择 “Neo.SmartContract.Framework”,最后点击
添加包
。程序开始添加 Neo 智能合约框架,完成后将显示已成功添加。
-
安装成功后,编写如下示例代码:
using Neo.SmartContract.Framework; using Neo.SmartContract.Framework.Services.Neo; namespace Neo.SmartContract { public class Class1 : Framework.SmartContract { public static bool Main() { return true; } } }
-
在菜单栏中点击
生成
->全部生成
编译相应代码。编译成功后,会在 bin/Debug/netstandard2.0/ 目录下生成 test.dll 文件,之后会用 neon 将其二次编译为 .avm 智能合约文件。
下载编译器
-
在 GitHub 上下载 neo-devpack-dotnet 项目。
由于当前master分支为Neo3编译器,下载之前请务必将 Git 分支切换为
master-2.x
-
用 Visual Studio for Mac 打开解决方案neo-devpack-dotnet.sln,右键单击Neo.Compiler.MSIL并选择
发布
。 -
将 neon 发布到默认路径。发布成功后,会在该目录下生成 neon.dll 文件,记住这个文件夹,之后会用到。
编译合约
-
下载并安装 .NET Core 。
-
将新建项目后生成的文件test.dll复制到neon.dll所在文件夹。
-
打开 终端,用
cd
命令进入neon.dll所在文件夹目录,输入dotnet neon.dll test.dll
开始编译。
编译器输出如上内容,编译成功,在目录中会生成 test.avm 文件。