我有一个代码,它依靠代码用户(这是一个库)生成的节俭和protobuf类。
我想使用我自己生成的节俭和protobuf类对其进行测试(它们可能不会经常更改)。因此,为此,我可以包括build.gradle
的依赖项,以便能够生成它们。如果我想在CI中执行相同的操作,则会出现问题,因为我必须在建筑机器上安装Thrift和Protobuf编译器。
例如,如果我使用PC生成用于测试的所有类,并将它们包含在测试源代码中,则可以避免这种情况。
主要问题:这是一个好的或可接受的做法,还是我希望每次这些课程都重新生成?
[恕我直言,这是一个好习惯,只在源代码中包含.proto
文件,并在编译项目时重新生成这些类。
因为您可能会更改.proto
文件,并且Protobuf编译器可能会升级,所以无论发生什么情况,您都需要重新生成这些类。但是,如果将这些类提交到源代码中,则可能会忘记提交这些类的新版本,并且很难对这些自动生成的代码的更改进行代码审查。相反,对.proto
文件的代码检查应该更加容易。