先说结论:由于合约移植是懒编译的,如果发现已经发布过,且发布的版本号没有变化就不会再发布,所以使用–reset。使用truffle migrate –reset来强制重编译并发布所有合约
我的truffle项目的migrations目录中原先有两个js文件
先前虽然已经部署过了,但是我加入新合约的时候修改了第二个js文件,也就是把新合约的部署代码写到了2中。没想到它还是不会执行,这是否有点太懒了????
我的解决方案是:新建了第三个js文件,把新合约的部署代码写入第三个文件中,再次执行
truffle migrate
成功!