Solon Native 是在 [Solon AOT](/article/1219) 的基础上，提供 GraalVM Native 的打包方式（将 Solon 项目编译为原生可执行程序）。日常开发变化不大，但是要求非常的苛刻。<mark>（从学习的角度，此章晚点学习为好）</mark>


好处：

* 启动非常快
* 运行时内存很少（介于 java jvm 和 go 之间）
* 程序自己就可以运行，不需要 jre

麻烦处：



| 麻烦 | 应对 | 备注 |
| -------- | -------- | -------- |
| 所有的反射，必须提前登记注册           | Solon AOT 会自动处理托管部分     |       |
| 所有的资源文件，必须提前登记注册     | Solon AOT 会自动处理托管部分     |       |
| 不能扫描资源文件                             | 使用 ResourceUtil.scanResources | Native 运行时从登记的资源里找 |
| 不能用动态编译                                | 可以换脚本或表达式工具     |       |
| 不能用字节码构建类                          | Solon AOT 会自动处理托管部分     |       |

* 自动处理不到的地方（尤其是第三方框架），需要手动注册补充

开发实践建议（如果是新立项目）：

* 先准备好环境
* 尝试最简单的入门
* 然后做技术选型和实验（确保选的第三方框架都能进行原生编译与打包）
* 正式开发


学习视频：


* [《Solon Native 开发学习（官网配套）》](https://www.bilibili.com/video/BV1JK421t76J/)
* [《Solon Native 开发学习 - 多模块编译（官网配套）》](https://www.bilibili.com/video/BV156421c7KY/)
