在典型的Spark开发周期中,我可以在IDE内部编写普通的JVM程序(Spark驱动程序)。可以在不将其部署到Spark的情况下运行/调试/单元测试我的程序。
仅当我完成程序后,将其打包为JAR,然后发出命令将其部署到Spark,而无需重新启动/中断Spark本身。 Spark知道我的Jar,可以捡起它。该程序在开发和部署阶段的功能完全相同。
那怎么可能?我可以像在Spring Boot程序中那样做这种事情吗?在该程序中,主程序定义了一些@Entities和@Repositories等,而其他程序则能够以独立方式(在开发中)使用/扩展这些类,以及充当插件(在部署中)?
除了这种方法还有其他更好的方法吗?