最近使用maven的父子工程结构搭建微服务架构时,不知道什么原因, 子工程总是被莫名移除出父工程,然后打包处的项目名变成了灰色, 重启该项目时会提示,“该子项目已被移除,是否删除该项目”,这个 当然不能删除,虽然不影响项目运行,但是看着还是很别扭.只需要 把该子项目重新添加至父项目中就行了.方法如下: 点击File,选中Project  Strueture... 选择Modules,点击+,点击Import Module 然后选中需要导入的子项目的pom文件,一步一步next就能将子项目成功添加…
Project,项目,也叫做工程. 父子工程中,子模块会自动继承父工程的资源.依赖,但子模块之间是独立的,不能直接访问彼此中的资源.类. 就是说我们可以把多个子模块都要用的资源.依赖提出来,放到父工程中,注意微服务的每个服务都是独立的,不能这么干. 父子工程的依赖继承问题 子模块会继承父工程的依赖,但并不是所有继承下来的依赖都有效.还能在子模块中使用. 作用域是provided.test的依赖,继承下来都是无效的,需要在子模块的pom.xml中重新导入. 使用其它子模块中的类 有时候我们要使用本…
项目骨架搭建成功之后. 因为父工程管理子工程.子工程相当于继承于子工程,所以子工程可以调用父工程里面的东西.那么就可以将jar包对应的配置文件书写到父工程的pom.xml文件中,注意:父工程的打包方式为pom.代码如下:(如果另有需要可以自己添加所需jar包). https://blog.csdn.net/weixin_42047611/article/details/81159848…
相信很多初学者都遇到过Eclipse中从SVN检出Maven项目之后看到的目录结构并不是Maven目录结构:或者只能先用SVN将Maven项目签入到本地,然后再用Eclipse导入Maven项目,但是每次提交或更新代码都要去项目目录去操作,非常不方便. 那么到底怎样才能在Eclipse中成功导入SVN检出的Maven项目呢?具体步骤如下: 1.使用Eclipse从svn检出项目.打开Eclipse,在project explorer空白区域右键鼠标移至import选择import.2.之后选择s…
使用Eclipse从svn检出项目. 打开Eclipse,在project explorer空白区域右键鼠标移至import选择import. 2 之后选择svn-->从svn检出项目,然后输入svn地址,按照提示一步步从svn上检出maven项目 3 检出成功后会在project explorer中显示刚刚检出的maven项目.但此时项目的目录结构还不是maven项目的目录结构,需要转换成maven项目的目录结构. 此时转换成maven项目的方法有两种. (一)直接单击项目,右键选择confi…
IDEA构建maven父子工程:  1.打开IDEA,Create New Project 如图:   如果没有弹出新建界面,可以先 file-->Close Project 如图: 2.创建父工程:选择SDK版本(我用的是1.7),Create from archetype 先不用勾选,next. 如图: 3.GroupId(一般填反转后公司域名).Artifacted.Version 三个属性可以作为项目唯一性的标识,next. 4.项目名称.项目路径 按需修改 Finish. 5.父工程创…
创建maven父子工程时遇到一个问题,当子工程的名称前缀和父工程的名称一样时,子工程会出现一系列的问题.比如我的父工程名称是microservicecloud,子工程名称是microservicecloud-api. 那么子工程就会存在如下问题. 1.目录类型需要手动设置 2.pom文件没有被加载,在maven管理界面是灰色的 3.子工程引入了父工程的依赖包,却无法使用,原因是依赖包没有真正的被加载到子工程中,需要安装lombok插件. 子工程引入的依赖 导入依赖包是却找不到 安装lombok插…
最近使用jenkins自动部署项目时遇到一个问题,如果部署单个的maven工程,没有什么问题, 但是在部署maven创建的父子工程,如果只从svn或者git上拉取子工程源码时,会报找不到父 工程pom或者relativePath的错误,这是因为,maven子工程是依赖父工程的pom的,所以拉取 代码的时候要先拉取整个父工程下来,然后再单个拉取子工程,也就是父工程创建一个任务, 然后子工程各一个任务.操作方式如下: 说明:我使用的jenkins是root权限 首先登陆jenkins到达jenkin…
先对父工程进行 mvn clean 再对子工程执行 install wagon:upload-single wagon:sshexec 使用wagon前提: 本地maven 的settings.xml 中加入如下配置,配置ssh主机用户名密码 <servers> <server> <id>linux-server-dev</id> <username>root</username> <password></passw…
问题 Maven聚合工程的父工程的packaging是pom,如果我们将其改为jar,会立刻报错: Project build error: 'packaging' with value 'jar' is invalid. Aggregator projects require 'pom' as packaging. 对于聚合工程来说,所有的子工程会被放置到父工程的目录下,然后在父工程的pom文件里会有如下的节点: <modules> <module>test-child</…