Metaplex上传NFT报"path" argument must be string错误咨询
Metaplex Candy Machine V2上传报错"path argument must be string"修复方案
报错根因
- 命令换行转义符使用错误:
\是类Unix系统(Mac/Linux)终端的命令换行转义符,Windows系统的CMD、PowerShell终端不识别该标记,会直接把\解析为路径分隔符,最终把你的资源路径错误拆分为/server3这类非法片段,触发路径类型校验错误、跳过目标目录的问题。 - 路径格式混用:命令中同时存在Windows反斜杠路径、Unix正斜杠路径,跨平台路径解析逻辑会出现识别偏差,进一步加剧路径读取异常。
修复步骤
- 统一路径格式:所有本地路径统一使用Windows原生反斜杠格式,明确标注盘符,不要混用正斜杠。
- 替换换行转义符:Windows环境下不要用
\做命令换行,要么把所有参数写在同一行执行,要么在PowerShell中用反引号(`,Tab键上方按键)作为换行转义符。
可直接运行的正确命令
单行版本(适配CMD/PowerShell全环境)
ts-node C:\server3\NFT\metaplex\js\packages\cli\src\candy-machine-v2-cli.ts upload -e devnet -k C:\server3\NFT\keypair.json -cp config.json -c example C:\server3\NFT\assets
PowerShell换行版本
ts-node C:\server3\NFT\metaplex\js\packages\cli\src\candy-machine-v2-cli.ts upload ` -e devnet ` -k C:\server3\NFT\keypair.json ` -cp config.json ` -c example ` C:\server3\NFT\assets
额外校验项
执行命令前确认两点:
- 执行命令的终端当前工作目录和你存放配置、资源的目录一致,优先用相对路径可以减少路径解析出错概率
C:\server3\NFT\assets目录下的NFT资源严格按序号.json、序号.png的规则从0开始连续命名,无多余无关文件,避免被程序判定为不支持的文件跳过。
内容的提问来源于stack exchange,提问作者netsocket
相关产品推荐
相关产品推荐

