【发布时间】:2022-12-18 23:05:08
【问题描述】:
尝试使用在 rinkeby 测试网络上启动 dapp
npx hardhat run scripts/deploy.js --network rinkeby
但是每当我尝试启动合同时,当我将私钥复制到环境变量中时,它会返回一条错误消息,提示私钥大小太短。
当我将私钥直接传递到我的 module.exports 上的帐户时,它会抛出一个错误,说我的私钥太长了!不管我是否在 ${} 之前附加了 0x 前缀。
安全帽.config.js
require("@nomicfoundation/hardhat-toolbox");
const PRIVATE_KEY = "privateKeyjdhsbcidsjhnc"
/** @type import('hardhat/config').HardhatUserConfig */
module.exports = {
solidity: "0.8.4",
paths: {
artifacts: './src/artifacts',
},
networks: {
hardhat: {
chainId: 1337
},
rinkeby: {
url: "https://eth-rinkeby.alchemyapi.io/v2/_YGPVs4UBSWtFxp-fpynFRcF34oU7WUI",
accounts: ['0x${process.env.PRIVATE_KEY}']
}
},
solidity: "0.8.4",
};`
部署.js
const hre = require("hardhat");
async function main() {
const Greeter = await hre.ethers.getContractFactory("Greeter");
const greeter = await Greeter.deploy("Hello,Hardhat!");
await greeter.deployed();
console.log("Greeter deployed to:", greeter.address)
}
main()
.then(() => process.exit(0))
.catch(error => {
console.error(error);
process.exit(1);
});
【问题讨论】: