Maven编译报错:maven compile error

905 阅读2分钟

Maven编译报错:  找不到类

刚从Eclipse换成Idea,真的难受,整体感觉,Idea这种东西该智能的时候不智能,不该智能的时候自作聪明,卡顿、界面也不清爽,可能是不适应的缘故,src\main\java在eclipse中本来就是一个独立的目录,在idea中弄得跟屎一样,还得自己创建并mark as ……,一不小心目录错了,编译不出字节码,瞎着急半天没找到错。

总之,即使Idea越来越友好于微服务开发,还是觉得Eclipse简约好用。

Idea让我眼花缭乱,在使用Maven编译时,竟然出现找不到依赖包中的类,搜了各种方法。                                                                                           1.clean重新编译            2. 统一编码   3. Invalidate caches and resart      都不行

最后,竟然发现,编译后的target的class目录内竟然没有字节码,查看原因,擦,原来是源码目录java\ 没有放在main目录下,而是直接放在了src目录下,Maven自然不会将源码打包,找了半天,原因在这,问题排解。

结论:源码包没有放在main下,而是放在了src下,Maven编译失败。除了缓存,依赖包的原因,找不到类和标记多和目录有关。

Maven的命令

clean:清除     

compile:编译,生成target目录,将编译后的字节码和配置文件放入          

package:打包,即,除了编译外,将target中的相关文件打成jar包   

install :编译打包后,将jar包放到本地仓库,只有放到本地仓库,这个jar包才能被依赖。

排错思路:

不要一个点一直不放过,一直调,要根据链路追踪每个问题的所在