Solana Devnet部署智能合约遇Blockhashed Expired错误求助
解决Solana Devnet部署智能合约时的Blockhashed Expired错误
以下是针对该错误的具体解决步骤:
检查网络连接稳定性
确保本地网络延迟低且稳定,可切换至有线网络或重启路由器。执行solana ping测试与Devnet节点的连接情况,若延迟过高会导致区块哈希提前过期。调整交易确认参数
部署时增加交易确认的承诺级别,延长超时窗口:anchor deploy --provider.cluster devnet --commitment confirmed也可全局设置该参数,避免每次部署重复输入:
solana config set --commitment confirmed更换Devnet节点
默认节点可能存在拥堵,手动指定可靠的公开节点:solana config set --url https://api.devnet.solana.com清理本地构建缓存
删除旧的构建产物和IDL文件,重新构建部署:rm -rf target/ idl/ anchor build anchor deploy --provider.cluster devnet验证账户状态
确认钱包余额充足:solana balance -k solana/my_wallet.json检查程序账户是否正常:
solana account <你的程序ID>重试部署命令
该错误多为临时网络拥堵导致,直接重复执行部署命令,通常几次重试即可成功。
内容的提问来源于stack exchange,提问作者Sandeep Kumar
相关产品推荐
相关产品推荐

