3.IDEA_maven聚合工程遇到的一些问题

初次使用,可能存在误解误区和不完善的地方,注意.

案例:使用maven聚合工程,springmvc,mybatis和dubbox链接,
1.idea的maven创建web项目的时候存在的下载插件问题,经常要卡四五分钟.
解决方案:


3.IDEA_maven聚合工程遇到的一些问题_第1张图片
image.png

web工程可以使用这个模板,然后在选择maven版本的时候,加上这一行
archetypeCatalog internal


3.IDEA_maven聚合工程遇到的一些问题_第2张图片
image.png

即可在本地仓库加载模板不连接远程仓库,实现快速建立.
补充:这个是父工程pom工程模板
3.IDEA_maven聚合工程遇到的一些问题_第3张图片
image.png

建立pojo等jar工程模块则直接不选模板即可.

web工程创建后有时候会没有eclipse那种src/main/java和test等文件夹,手动创建好后修改一下pom,他们就会被自动加入成资源文件和源文件了.
3.IDEA_maven聚合工程遇到的一些问题_第4张图片
image.png
  • 2.项目中有时候会出现spring的依赖问题,注意检查是否添加上配置文件


    3.IDEA_maven聚合工程遇到的一些问题_第5张图片
    image.png
  • 3.在IDEA中使用maven工程来使用dubbo和mybatis,一开始出现了无法连接的bug,看到有人说是因为IDEA不会自动把mybatis的sqlXML文件编译项目下target文件夹到classes文件夹中,因为持久层编译的类和xml不在同一块导致无法读取xml文件所以报错.笔者一开始也以为是类似的问题,故使用

   
        
            
                src/main/java
                
                    **/*.*
                
            
            
                src/main/resources
                
                    **/*.*
                
            
        
    

但是问题还在
最后是删了改模块并重新建立一次模块解决的问题
查看了持久层模块的工程目录下的target.classes下,发现不加上面这行其实也编译进去了并且成功运行了,原因猜测是
1.在resources下创建目录,需求是在a下面创建b,然后在b下面创建c
如果是在IDEA中,创建目录输入a.b.c即可,但是在eclipse中,需要先创建a,然后在a下面新建b,再在b下面新建c,如果输入a.b.c,则会创建一个叫a.b.c的文件夹,并不会分层,导致xml所编译的文件与class不一致.


3.IDEA_maven聚合工程遇到的一些问题_第6张图片
image.png

image.png

这两个是不一样的
但是在IDEA中,新建a.b.c,和在a下建立b,然后在b下建立c,是同样的


image.png

说了这么多,实际上编译到同一个目录下还是跑不起来,只好删了这个maven模块,重新建立一个一模一样的,就能跑起来了(试了两次,确信),真的是啥都没改,重建就OK

后续再扩展补充.

你可能感兴趣的:(3.IDEA_maven聚合工程遇到的一些问题)