我在运行flink程序时候,就是一个table程序,在编译时候以及写代码都不报错,然后运行就报错少依赖,
卧槽,而且这个依赖这个类我都能够找到,点进去能看到源码,死活报错找不到
后来发现我在这几个类的pom.xml文件里面都加着 <scope>provided</scope>
把这个<scope>provided</scope>删除即可
对于scope=compile的情况(默认scope),也就是说这个项目在编译,测试,运行阶段都需要这个artifact对应的jar包在classpath中。
而对于scope=provided的情况,则可以认为这个provided是目标容器已经provide这个artifact。换句话说,它只影响到编译,测试阶段。在编译测试阶段,我们需要这个artifact对应的jar包在classpath中,而在运行阶段,假定目标的容器(比如我们这里的liferay容器)已经提供了这个jar包,所以无需我们这个artifact对应的jar包了。