4. 编译合约

原文地址:http://truffleframework.com/docs/getting_started/compile

合约位置

所有你的合约应该位于./contracts目录。默认我们提供了一个合约文件,一个库文件,均以.sol结尾作为示例。尽管库文件有一定的特殊性,但为简单起见,当前均称之为合约。

命令

要编译您的合约,使用:

truffle compile

Truffle仅默认编译自上次编译后被修改过的文件,来减少不必要的编译。如果你想编译全部文件,可以使用--compile-all选项。

truffle compile --compile-all

约定

Truffle需要定义的合约名称和文件名准确匹配。举例来说,如果文件名为MyContract.sol,那么合约文件须为如下两者之一:

contract MyContract {
  ...
}
// or
library MyContract {
  ...
}

这种匹配是区分大小写的,也就是说大小写也要一致。推荐大写每一个开头字母,如上述代码定义。

依赖

你可以通过使用import来声明依赖。Truffle将会按正确顺序依次编译合约,并在需要的时候自动关联库。

编译目录

编译的输出位于./build/contracts目录。如果目录不存在会自动创建。这些编译文件对于Truffle框架能否正常工作至关重要。你不应该在正常的编译或发布以外手动修改这些文件。

如果任何问题,欢迎留言批评指正。

处于某些特定的环境下,可以看到评论框,欢迎留言交流^_^。