仅列出目录,有空填坑。
- 使用合适的镜像仓库加速包的下载
- 使用 -T 1C 参数启动并发构建
- 使用 -am -pl 仅构建必要模块及其依赖
- 禁用非必要的插件(比如 test 或 enforcer,仅在必要阶段才打开这些插件)
- 为 protobuf-gen 的代码专门准备一个模块放,而不是每次都在 compile 的时候重新生成一次 (根据 proto 数量可以稳定提升几秒)
- 增量构建(不执行 "clean"),时间中优化很大,30s -> 8s
- 但有些情况下会引起问题,比如Java文件删除或移动时,对应的 .class 文件依旧残留,可能会被加载,从而导致运行时候问题(比如 Spring 加载到 2 个同名的 bean
- 可能需要配置 compiler 的参数,否则每次 .class 里会包含一些动态信息,从而导致每次 compile 都会被认为引起变化,从而导致这个优化失效
- 对于有 package.java 文件的应该需要特殊配置一下 compiler 参数,理由类似上一条