美文网首页
3.IDEA_maven聚合工程遇到的一些问题

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

作者: 七枷琴子 | 来源:发表于2018-06-01 09:07 被阅读0次

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

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


    image.png

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


    image.png
    即可在本地仓库加载模板不连接远程仓库,实现快速建立.
    补充:这个是父工程pom工程模板 image.png
    建立pojo等jar工程模块则直接不选模板即可.
    web工程创建后有时候会没有eclipse那种src/main/java和test等文件夹,手动创建好后修改一下pom,他们就会被自动加入成资源文件和源文件了. image.png
    • 2.项目中有时候会出现spring的依赖问题,注意检查是否添加上配置文件


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

       <build>
            <resources>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.*</include>
                    </includes>
                </resource>
                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.*</include>
                    </includes>
                </resource>
            </resources>
        </build>
    

    但是问题还在
    最后是删了改模块并重新建立一次模块解决的问题
    查看了持久层模块的工程目录下的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不一致.


    image.png
    image.png

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


    image.png

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

    后续再扩展补充.

    相关文章

      网友评论

          本文标题:3.IDEA_maven聚合工程遇到的一些问题

          本文链接:https://www.haomeiwen.com/subject/yvcajftx.html