Solana上的程序通常在本地主机和开发网络上进行开发和测试,然后部署到测试网络或主网Beta。开发人员可以使用Solana CLI通过命令solana program deploy <程序路径>部署其程序。一旦编译成包含BPF字节码的ELF共享对象,程序将上传到指定的Solana集群。部署的程序存储在标记为可执行的账户中,账户地址作为program_id。 最初,So...
', async () => { await program.rpc.create({ accounts: { counterAccount: counterAccount.publicKey, user: provider.wallet.publicKey, systemProgram: anchor.web3.SystemProgram.programId, }, signers: [counterAccount] } as any)}); it("Increment counter", async () ...
在Solana主板上有两个spl令牌的薄荷地址,我需要在Solana上找到所有可能市场的公钥(即以下代码片段中的marketId ),以便从以下位置获取令牌交换信息: const tokenSwap = await TokenSwap.loadTokenSwap( con, new PublicKey(marketId),// << HERE TOKEN_SWAP_PROGRAM_ID, payerAaccount ); 我在github或其他地方找不...
$ solana program deploy --program-id <合约地址> <合约文件路径>.so 替换<合约地址>为你的钱包地址,<合约文件路径>为你生成的合约文件路径。 步骤五:调用智能合约 一旦智能合约部署成功,你就可以使用Solana提供的SDK或其他编程语言与该智能合约进行交互。 你可以使用Solana命令行工具调用智能合约: $ solana progra...
从文件中加载合约的二进制文件:solana program load my_contract.bin 创建一个签名者:solana-keygen new --outfile signer.json 部署合约:solana program deploy signer.json my_contract.bin 获取合约地址:solana program show --program-id 调用合约 调用合约方法:solana program call --account incrementCounter 检查...
$ solana program deploy --keypair /path/to/admin_keypair.json --program-id <program_id> /path/to/my_program.so 在上面的命令中,--keypair参数指定了管理员账户的密钥文件路径,--program-id参数指定了智能合约的程序ID,/path/to/my_program.so参数指定了编译后的智能合约文件路径。部署完成后,我们...
在第一步我们编译rust生成bpf文件后,并没有进行部署,这一步就是为了检查项目是否部署在链上,通过检查programId是否有关联账号来判断。 首先读取项目密钥对的路径文件,并获得公钥即programId,这个文件在编译后生成,一般在target/deploy目录下的json文件中 const PROGRAM_KEYPAIR_PATH = ('.../src/transfer-lamports...
$ anchor deploy 部署成功 如果你得到提示部署成功,这意味着你的程序部署成功。 去区块链浏览器可以用程序 ID 查询。确保cluster被设置为devnet。程序 ID 是通过运行anchor keys list得到的。 我们的程序在区块链浏览器上显示的结果 一些额外的技术 有一些额外的工具,你可以在你的 Solana dapps 中使用。
$ solana program deploy dist/program/helloworld.so 1. 6) 启动客户端 $ npm run start root@VM-0-2-ubuntu:~/example-helloworld# npm run start > helloworld@0.0.1 start /root/example-helloworld > ts-node src/client/main.ts Let's say hello to a Solana account... ...
$ solana program deploy @solana/spl-token $ solana token create — decimals 0 这将创建一个新的令牌帐户,其符号为“NFT”。然后,您可以通过运行以下命令将此帐户的所有权转移到您的智能合约: $ solana token authorize — account <account-address> <program-id> 这将授权您的智能合约管理 NFT 代币账户。