如何用Hardhat的getContractFactory部署WETH?WETH源码位置在哪?
查找Damn Vulnerable DeFi项目中WETH合约源码的方法
检查项目依赖库
ethers.js的getContractFactory若找不到本地合约文件,会自动从项目依赖的合约库中读取。查看项目根目录的package.json,如果依赖了@openzeppelin/contracts这类库,WETH源码通常在node_modules/@openzeppelin/contracts/token/ERC20/extensions/WETH.sol路径下。本地文件搜索
在项目根目录执行终端命令,直接搜索合约文件:find . -name "WETH.sol" -type f这个命令会遍历项目所有文件,精准定位名为
WETH.sol的文件。Damn Vulnerable DeFi项目本身可能在contracts目录下内置了该合约,搜索后就能找到。通过编译产物反向追踪
Hardhat编译后的合约产物会存在artifacts目录,getContractFactory会优先读取这里的文件。你可以查看artifacts/contracts下的WETH相关编译文件,文件中会标注源码的原始路径,顺着路径就能找到源码。
内容的提问来源于stack exchange,提问作者Louis Law
相关产品推荐
相关产品推荐

