精华内容
下载资源
问答
  • Maven 模块化开发

    2021-03-11 17:05:52
    (1)Maven 模块化开发在多人协同开发时,特别是规模较大的项目,为了方便日后的代码维护和管理,我们会将每个开发人员的工作细分到具体的功能和模块上。随着项目的不断扩大,模块也会越来越多,后续会更加难以维护和...

    (1)Maven 模块化开发

    在多人协同开发时,特别是规模较大的项目,为了方便日后的代码维护和管理,我们会将每个开发人员的工作细分到具体的功能和模块上。随着项目的不断扩大,模块也会越来越多,后续会更加难以维护和扩展,为了应对这种情况可以采用微服务架构的方式进行开发。

    以商城为例,我们可以将模块划分为如下形式:

    统一的依赖管理(dependencies)

    通用的工具类(commons)

    领域模型(domain)

    管理后台(admin)

    商城前端(ui)

    接口模块(api)

    整个模块化开发过程主要是在开发思想上稍作了一些转变,只需要按照下面的流程操作即可。

    创建根项目(工程)

    把之前的my-shop项目修改成my-shop-bak,然后重新创建一个名 my-shop 的工程(在e盘某个目录下创建一个叫my-shop的文件夹,在IDEA打开该文件夹),现在my-shop不叫项目了,叫工程,工程是模块化开发的。

    新建工程的pom.xml 文件

    代码如下:

    4.0.0

    com.xue

    my-shop

    1.0.0-SNAPSHOT

    pom

    该项目称之为 Root 项目,主要作用是管理整个工程的全部模块,当有新模块加入时需要在 modules 元素下配置对应的模块目录

    创建统一的依赖管理

    在my-shop工程下创建一个名为 my-shop-dependencies 的项目,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop

    1.0.0-SNAPSHOT

    ../pom.xml

    my-shop-dependencies

    pom

    my-shop-dependencies

    UTF-8

    UTF-8

    1.8

    3.5

    1.2

    1.2.17

    3.1.0

    1.7.25

    4.3.17.RELEASE

    org.springframework

    spring-context

    ${spring.version}

    org.springframework

    spring-webmvc

    ${spring.version}

    javax.servlet

    javax.servlet-api

    ${servlet-api.version}

    provided

    javax.servlet

    jstl

    ${jstl.version}

    org.slf4j

    slf4j-api

    ${slf4j.version}

    org.slf4j

    slf4j-log4j12

    ${slf4j.version}

    org.slf4j

    jcl-over-slf4j

    ${slf4j.version}

    org.slf4j

    jul-to-slf4j

    ${slf4j.version}

    log4j

    log4j

    ${log4j.version}

    org.apache.commons

    commons-lang3

    ${commons-lang3.version}

    org.apache.maven.plugins

    maven-compiler-plugin

    3.7.0

    ${java.version}

    ${java.version}

    ${project.build.sourceEncoding}

    true

    src/main/java

    **/*.java

    src/main/resources

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-dependencies 配置

    my-shop-dependencies

    创建通用的工具类

    在my-shop工程下创建一个名为 my-shop-commons 的项目,用于存放所有的工具类的,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop-dependencies

    1.0.0-SNAPSHOT

    ../my-shop-dependencies/pom.xml

    my-shop-commons

    jar

    my-shop-commons

    org.apache.commons

    commons-lang3

    org.slf4j

    slf4j-api

    org.slf4j

    slf4j-log4j12

    org.slf4j

    jcl-over-slf4j

    org.slf4j

    jul-to-slf4j

    log4j

    log4j

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-commons 配置

    my-shop-dependencies

    my-shop-commons

    创建领域模型

    在my-shop工程下创建一个名为 my-shop-domain 的项目,用于存放所有的实体类的,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop-dependencies

    1.0.0-SNAPSHOT

    ../my-shop-dependencies/pom.xml

    my-shop-domain

    jar

    my-shop-domain

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-web-admin 配置

    my-shop-dependencies

    my-shop-commons

    my-shop-domain

    创建管理后台

    在my-shop工程下创建一个名为 my-shop-web-admin 的项目,用于存放所有的后台的相关代码的,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop-dependencies

    1.0.0-SNAPSHOT

    ../my-shop-dependencies/pom.xml

    my-shop-web-admin

    war

    my-shop-web-admin

    com.xue

    my-shop-domain

    ${project.parent.version}

    com.xue

    my-shop-commons

    ${project.parent.version}

    org.springframework

    spring-context

    org.springframework

    spring-webmvc

    javax.servlet

    javax.servlet-api

    provided

    javax.servlet

    jstl

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-web-admin 配置

    my-shop-dependencies

    my-shop-commons

    my-shop-domain

    my-shop-web-admin

    注意

    由于我们用的快照版,当工程或者某个项目的某个版本号更改了,这时候我们需要总是更新快照版,修改setting的mavenhttps%3A%2F%2Fnote.youdao.com%2Fyws%2Fpublic%2Fresource%2F9d617032f9b866baef0054a4104f4000%2Fxmlnote%2FCE2D848C71B94337AF518FCF06C2E7F7%2F10166

    创建商城前端

    在my-shop工程下创建一个名为 my-shop-web-ui 的项目,用于存放所有的商城前台的相关代码的,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop-dependencies

    1.0.0-SNAPSHOT

    ../my-shop-dependencies/pom.xml

    my-shop-web-ui

    war

    my-shop-web-ui

    com.xue

    my-shop-commons

    ${project.parent.version}

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-web-ui 配置

    my-shop-dependencies

    my-shop-commons

    my-shop-domain

    my-shop-web-admin

    my-shop-web-ui

    创建接口模块

    在my-shop工程下创建一个名为 my-shop-web-api 的项目,用于存放用到的应用程序接口及api的,并不是我们创建的interface,在其项目下创建pom.xml 文件如下:

    4.0.0

    com.xue

    my-shop-dependencies

    1.0.0-SNAPSHOT

    ../my-shop-dependencies/pom.xml

    my-shop-web-api

    war

    my-shop-web-api

    com.xue

    my-shop-commons

    ${project.parent.version}

    PS:别忘记在 my-shop 工程的 pom.xml 中增加 my-shop-web-api 配置

    my-shop-dependencies

    my-shop-commons

    my-shop-domain

    my-shop-web-admin

    my-shop-web-ui

    my-shop-web-api

    好了,到此基本的架构已经搭建好了

    a2046572148bc52ebce684f742e47854.png

    展开全文
  • 重命名Maven模块

    2021-08-16 18:54:50
    一 、在项目结构中对模块名进行修改: 二、对软件包名进行重命名: 三、Maven 构建报有些类没有找到,是因为引用这个类的文件没有被管理,所以没有修改到。

    一 、在项目结构中对模块名进行修改:

    二、对软件包名进行重命名: 

     

    三、Maven 构建报有些类没有找到,是因为引用这个类的文件没有被管理,所以没有修改到。 

     

    展开全文
  • Maven模块拆分方法

    2021-01-17 15:40:11
    一个大项目经常要拆分成多个小模块分开打包,Maven是可以支持模块拆分的。可以包含(父模块即项目包含子模块),也可以并行(父模块和子模块是平级的)。推荐用包含方式,更清晰,更简单一些。首先建个空项目,只要个pom...

    一个大项目经常要拆分成多个小模块分开打包,Maven是可以支持模块拆分的。可以包含(父模块即项目包含子模块),也可以并行(父模块和子模块是平级的)。推荐用包含方式,更清晰,更简单一些。

    首先建个空项目,只要个pom.xml,不要有src。它就是父模块,pom的主要内容为:

    com.xxx

    xxx-xxx

    项目名

    pom

    1.1.0-SNAPSHOT

    xx1

    xx2

    注意父模块pom中的packaging只能是pom,不能默认,也不能是其他的。

    module是子模块的路径(文件夹名),如果不在project的根目录下,需要指定子模块的具体路径,支持相对路径。

    然后建子模块。子模块的pom.xml的主要内容为:

    com.xxx

    xxx

    1.1.0-SNAPSHOT

    4.0.0

    xxx-xxx

    子模块名

    jar

    需要加入父模块的依赖,注意不再是路径了。子模块的packaging可以是jar或war等。

    模块之间也可以依赖,注意不要循环依赖。

    子模块中parent的version需要显示写出来,用属性变量不太好使。

    a4c26d1e5885305701be709a3d33442f.png

    展开全文
  • 在idea创建maven模块之后,模块名一直呈灰色,导致我的springboot工程无法创建其Bean 原因分析: 问题在于设置中我们把这个路径给忽略掉了 解决方案: 打开seettings 按照下图的步骤取消文件路径的忽略 刚刚...

    问题描述:

    在idea创建maven模块之后,模块名一直呈灰色,导致我的springboot工程无法创建其Bean

    在这里插入图片描述

    原因分析:

    问题在于设置中我们把这个路径给忽略掉了


    解决方案:

    打开seettings
    在这里插入图片描述
    按照下图的步骤取消文件路径的忽略
    在这里插入图片描述
    刚刚灰色的模块就可以正常使用了(完成)
    在这里插入图片描述

    展开全文
  • 现象 不知道做了什么操作,导致某个maven模块无法识别为maven类型。 分析原因 查看工程根目录下的.idea中的misc.xml文件发现子模块的pom.xml被忽略。 解决方案 删除misc.xml中的ignoredFiles配置。 刷新maven工程...
  • 在删除了maven项目中的某一个module之后,想要重新创建一个同名的,idea会报错 module xxx already exists 解决方法 .idea/modules.xml 文件,这里存了曾经创建的所有module,但是删除module并不会把这个文件里...
  • idea导入maven模块

    2021-09-14 09:04:09
    1.打开Project Structure 2.在Modules中import Module 3.之后选择路径 4.选择import Module 选择 Maven 5.直接 next -> finish 无需配置 6.成功给项目加入模块
  • 处理打包 class not found <plugin>...spring-boot-maven-plugin</artifactId> <!-- 尤其注意 classifier 需要设置 exec, 先打编译用jar包, 再打可执行jar --> <configuration>
  • 情况1 原本就是一个Maven模块,只是不知道怎么被转化为普通模块 1、在模块pom.xml 文件上,右键 Add as Maven Project。 2、如果看不到右键 Add as Maven Project 选项,则在模块pom.xml 文件上,右键 Maven, 然后...
  • 我有Java项目,我想转换一个多模块项目(模块)。我有一个父项目,我想将现有项目添加到父项目中。我喜欢eclipse样式的文件结构,是否可以在Parent中添加现有项目。谢谢,问候和梅塔,一郎行参考方案首先在所有项目中...
  • 今天在拉新代码之后idea开发工具右侧的maven窗口不见了,下面是解决办法。 ** 情况一 **:如图 左右没有边框,解决办法点击左下角:如图 情况二 :要是右侧边框有,但是就是没有maven 如图 由于我的maven已经出来...
  • 1、 maven模块名称和项目名称不一致 1、解决方法   maven下的模块名称是由 pom 文件下的属性确定,只需要修改成对应的名字即可。 2、项目模块在maven里变成灰色 1、问题描述   在学习谷粒商城项目的时候,由于...
  • IDEA—右边maven模块不见了

    热门讨论 2021-01-30 12:00:55
    每个项目的文件结构可能不同,打开项目用打开文件夹的形式时,可能会出现打开之后右边没有maven的情况。 【内容】 1、确定项目中是否有pom.xml文件 有可能导入的文件中没有pom.xml文件,IDEA不能识别当前项目是...
  • 最近不知怎么的,发现intelliji idea右侧的maven project的某个模块是灰色的,导致想运行main方法都运行不了。 如上图,可以看到rest-service模块是灰色的。后来查资料发现是因为idea的maven配置里又一个ignored ...
  • 今天导入一个Maven项目,里面有多个Maven模块。完成后发现部分子模块未识别(未识别的标记为A),代码都是灰色的。原因可能是因为我导入外部的项目时,只加载了父Maven,而内部的子Maven没有被搜索到。 确切的来说,...
  • Maven模块间循环依赖的解决方案以及分析 问题重现 在coding中Maven各个模块之间经常会有互相引用的问题,当A模块中需要用B模块的功能,而B模块很有可能也需要用到A模块中的功能,这样就会存在A模块中引入了B,而B...
  • maven模块化管理项目

    2020-12-22 22:21:55
    maven模块化管理项目 在做java开发的时候我们经常看到那些一个项目分很多模块的,如果使用的是idea的话我们直接new Module就可以创建模块了,但是有时候我们由于idea收费或者电脑配置带不动等等原因无法使用idea,这...
  • 如何在maven模块中设置循环引用?一个MVN项目父设置是这样的:com.company.system.pingsystem-pingsystem-pingparent_lvl_1com.company.system1.0-SNAPSHOT然后我去找父母说的POM,找到这个:...
  • 1.首先我们导入对应maven项目 可以看到右边并没有maven模块 2.选择pom.xml文件,右击 - 选择Add as Maven Project 单击之后就会发现右边有Maven模块
  • 如下图所示 解决方案...
  • 问题原因: 可能是因为在设置里忽略了该模块 解决方法: File > Settings > Build, Execution, Deployment > Build Tools > Maven > lgnored Files 将灰色的模块取消勾选,Apply后即可恢复
  • maven模块子项目 详细操作 1.建立好后首先向pom.xml引入文件 <dependencies> <dependency> <groupId>org.jeecgframework.boot</groupId> <artifactId>jeecg-boot-base-common&...
  • idea2020 右边maven模块不见了

    千次阅读 2021-04-26 14:31:14
    1、idea2020 右边maven模块不见了 2、.pom文件文件上右键选择add as maven project 3、见证奇迹
  • 在做java项目时,遇到了Maven模块多级嵌套,子子模块的pom.xml未继承子模块的pom.xml文件: 注: 父模块——只管理全局模块相关的版本号并锁定依赖的版本 子模块——添加项目需要的依赖 子子模块——实现具体...
  • 问题:pom文件有删除线,不能识别maven模块 解决:File–>Settings–>Build,Execution,Deployment–>Build Tools–>Maven–>Ignored Files 取消勾选被忽略的pom文件 验证
  • tomcat发布maven模块步骤 为模块添加web目录 右键项目project structure 找到module 点击模块再点加号,为模块添加web目录 3. 可以修改web目录位置和名字,如原来是web可以改为习惯的src\main\webapp 下方的web...
  • maven模块化遇到的问题 最近组内的okr制定包含了模块化改造的需求,最近没什么需求。闲着没事,同时新的大需求可能也需要新加服务。maven这块也需要学习一下,于是就开始了踩坑之路。 循环依赖问题 在改造过程中,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 138,587
精华内容 55,434
关键字:

maven模块