You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Starkli在Starknet声明/部署合约时遇JSON语法错误求助

解决Starkli执行declare/deploy时的JSON格式错误

错误原因分析

这个错误提示expected ',' or '}' at line 11 column 3几乎可以确定是STARKNET_ACCOUNT环境变量指向的账户配置文件(通常是account.json)存在JSON语法错误,而非合约代码问题——因为你执行declare和deploy命令时都会触发相同错误,这两个操作都依赖账户配置文件的正确性。

解决步骤

  • 检查账户文件路径与内容

    1. 先确认环境变量指向的路径是否正确:
      echo $STARKNET_ACCOUNT
      
      确保输出的路径存在对应的文件,没有多余空格或拼写错误。
    2. 打开该文件,定位到第11行第3列,检查JSON格式:
      • 查看是否缺少逗号(比如前一个键值对末尾未加逗号)
      • 检查引号是否匹配(比如字符串未闭合)
      • 确认对象{}或数组[]是否正确闭合
  • 验证JSON格式有效性
    使用Python自带的工具校验文件格式,终端执行:

    python3 -m json.tool $(echo $STARKNET_ACCOUNT)
    

    如果文件存在语法错误,该命令会直接输出具体的错误位置和原因,比手动查找更高效。

  • 重新生成账户文件
    如果手动修复困难,重新创建账户文件:

    1. 执行账户创建命令(根据你的网络选择测试网或主网):
      starkli account create --network testnet
      
    2. 按照提示完成创建后,重新设置STARKNET_ACCOUNT和STARKNET_KEYSTORE环境变量,指向新生成的文件。
  • 确认环境变量配置
    执行以下命令检查两个环境变量的配置是否正确:

    printenv | grep STARKNET
    

    确保路径没有特殊字符、空格,且文件确实存在。

进一步排查

如果以上步骤无法解决问题,可提供账户配置文件的第8-14行内容(注意打码私钥、地址等敏感信息),以便更精准定位问题。

内容的提问来源于stack exchange,提问作者Lapo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 04:50:08