关于POM声明为provided的依赖,运行程序时报错NoClassDefFoundError

问题叙述

我在编写flink程序时,将flink相关依赖声明为provided(目的是项目打包时不会将flink依赖打入包最终jar包中,减少内存占用)
但是如果在IDEA本地中执行程序会报错java.lang.NoClassDefFoundError,如下所示
关于POM声明为provided的依赖,运行程序时报错NoClassDefFoundError_第1张图片

解决方法

我们可以在IDEA中将声明为 provided 的依赖加入到类路径,这样在本地测试代码时也不会报错,如下
关于POM声明为provided的依赖,运行程序时报错NoClassDefFoundError_第2张图片
关于POM声明为provided的依赖,运行程序时报错NoClassDefFoundError_第3张图片
这样,我们就可以在本地测试代码时使用provided声明的依赖了

你可能感兴趣的:(问题,intellij-idea,java,ide)