C:\Users\pushp\Desktop\factor>snarkjs zkey export solidityverifier circuit_final.zkey verifier.sol
[ERROR] snarkJS: [Error: ENOENT: no such file or directory, open 'C:\C:\Users\pushp\AppData\Roaming\npm\node_modules\snarkjs\templates\verifier_groth16.sol'] {
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'C:\\C:\\Users\\pushp\\AppData\\Roaming\\npm\\node_modules\\snarkjs\\templates\\verifier_groth16.sol'
}即使我可以在指定位置看到文件verifier_groth16.sol,我也会收到此错误。我所理解的是,我的位置是C:\Users\pushp\AppData\Roaming\npm\node_modules\snarkjs\templates\verifier_groth16.sol,而我可以在该位置之前看到一个额外的C:\,这可能会造成问题。如何解决这个问题?
发布于 2021-08-06 09:42:47
我解决了类似的问题,可能会对你有所帮助。我使用snarkjs@0.4.6。
>snarkjs generateverifier
C:\Users\spike\AppData\Roaming\npm\node_modules\snarkjs\build
\C:\Users\spike\AppData\Roaming\npm\node_modules\snarkjs\build\templates
[ERROR] snarkJS: [Error: ENOENT: no such file or directory, open 'C:\C:\Users\spike\AppData\Roaming\npm\node_modules\snarkjs\templates\verifier_groth16.sol.ejs'] {
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'C:\\C:\\Users\\spike\\AppData\\Roaming\\npm\\node_modules\\snarkjs\\templates\\verifier_groth16.sol.ejs'
}根据github issue#57 (Can't find package.json in directory)卡尔夫博尔的回答。我只是在C:\Users\spike\AppData\Roaming\npm\node_modules\snarkjs\build\cli.cjs上搜索"verifier_groth16.sol“
更新行
if (await fileExists(path__default['default'].join(__dirname$2, "templates"))) {
templates.groth16 = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2, "templates", "verifier_groth16.sol.ejs"), "utf8");
templates.plonk = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2, "templates", "verifier_plonk.sol.ejs"), "utf8");
} else {
templates.groth16 = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2, "..", "templates", "verifier_groth16.sol.ejs"), "utf8");
templates.plonk = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2, "..", "templates", "verifier_plonk.sol.ejs"), "utf8");
}至
if (await fileExists(path__default['default'].join(__dirname$2.slice(1,__dirname$1.length), "templates"))) {
templates.groth16 = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2.slice(1,__dirname$1.length), "templates", "verifier_groth16.sol.ejs"), "utf8");
templates.plonk = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2.slice(1,__dirname$1.length), "templates", "verifier_plonk.sol.ejs"), "utf8");
} else {
templates.groth16 = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2.slice(1,__dirname$1.length), "..", "templates", "verifier_groth16.sol.ejs"), "utf8");
templates.plonk = await fs__default['default'].promises.readFile(path__default['default'].join(__dirname$2.slice(1,__dirname$1.length), "..", "templates", "verifier_plonk.sol.ejs"), "utf8");
}另一个类似的问题是How to fix nodejs throw err; ^ Error: ENOENT: no such file or directory, open
https://stackoverflow.com/questions/65757006
复制相似问题