maven构件子模块步骤及注意事项

devtools/2025/2/5 21:56:03/

一、创建父工程

父工程可以是顶级父工程,也可以是在父工程下,父工程的packaging需要设置为pom;父工程下的子级父工程,主要作用是模块聚合,即继承父工程和modules聚合,没有src文件,pom文件也不做依赖版本控制

  <!--父工程的packaging都是pom,无论是顶级父工程还是模块的父工程    --><packaging>pom</packaging>

二、在子工程中引入parent

    <parent><groupId>com.xuecheng</groupId><artifactId>xuecheng-plus-parent</artifactId><version>0.0.1-SNAPSHOT</version><!--基于当前pom.xml找到父工程,   ../上一级目录--><relativePath>../xuecheng-plus-parent</relativePath></parent>

如果该工程是父工程的平级工程(即父工程和子工程的文件夹均在同一个目录下),则需要显示指出父工程的pom.xml的位置(如上所示../表示上一级目录),如果是平级工程则不需要,可以省略relativePath标签

三、在父工程中添加modules标签,说明子工程

    <modules><module>xuecheng-plus-content-api</module><module>xuecheng-plus-content-model</module><module>xuecheng-plus-content-service</module></modules>

此标签在父工程的pom.xml中表示子模块的位置,标签内元素为<module>。以当前父工程所在的文件夹为基准,<module>中填写子模块的相对路径;
如果是父工程文件夹下的子工程,则直接填写其文件夹名即可 

四、子工程之间的相互调用,通过添加依赖实现,并且依赖可以传递

<!--  api依赖service,service依赖model,model依赖base,base依赖parent,依赖传递--><dependency><groupId>com.xuecheng</groupId><artifactId>xuecheng-plus-content-service</artifactId><version>0.0.1-SNAPSHOT</version></dependency>


http://www.ppmy.cn/devtools/156382.html

相关文章

PHP 调用 DeepSeek API 完整指南

简介 本文将介绍如何使用 PHP 调用 DeepSeek API&#xff0c;实现流式对话并保存对话记录。PHP 版本使用面向对象的方式实现&#xff0c;代码结构清晰&#xff0c;易于维护。 1. 环境准备 1.1 系统要求 PHP 7.0 或更高版本PHP cURL 扩展文件写入权限 1.2 项目结构 deepse…

ONE NET MQTT+HTTP多端控制

使用移动的ONENET实现数据上传与远程控制&#xff0c;数据上传使用MQTT协议&#xff08;ESP8266&#xff09;&#xff0c;而数据查看和远程控制使用的HTTP&#xff08;安卓端/QT&#xff09;&#xff0c;效果&#xff1a; ONENET简单MQTT和HTTP使用 ESP8266通过MQTT上传和订阅数…

Vue整合Axios

目标 将 axios 请求方法&#xff0c;封装到 request 模块 我们会使用 axios 来请求后端接口, 一般都会对 axios 进行一些配置 (比如: 配置基础地址,请求响应拦截器等等) 一般项目开发中, 都会对 axios 进行基本的二次封装, 单独封装到一个模块中, 便于使用 安装 Axios npm …

智能汽车网络安全威胁报告

近年来随着智能汽车技术的快速发展&#xff0c;针对智能汽车的攻击也逐渐从传统的针对单一车辆控制器的攻击转变为针对整车智能化服务的攻击&#xff0c;包括但不限于对远程控制应用程序的操控、云服务的渗透、智能座舱系统的破解以及对第三方应用和智能服务的攻击。随着WP.29 …

【C++】线程池实现

目录 一、线程池简介线程池的核心组件实现步骤 二、C11实现线程池源码 三、线程池源码解析1. 成员变量2. 构造函数2.1 线程初始化2.2 工作线程逻辑 3. 任务提交(enqueue方法)3.1 方法签名3.2 任务封装3.3 任务入队 4. 析构函数4.1 停机控制 5. 关键技术点解析5.1 完美转发实现5…

TensorFlow 示例摄氏度到华氏度的转换(二)

这是一个完整的神经网络实现&#xff0c;用于将摄氏度转换为华氏度。下面&#xff0c;我会逐步描述各个步骤&#xff0c;并提供完整代码。 1. 数据准备与预处理 在这部分&#xff0c;我们准备了摄氏度&#xff08;features&#xff09;与对应的华氏度&#xff08;labels&…

LabVIEW无人机航线控制系统

介绍了一种无人机航线控制系统&#xff0c;该系统利用LabVIEW软件与MPU6050九轴传感器相结合&#xff0c;实现无人机飞行高度、速度、俯仰角和滚动角的实时监控。系统通过虚拟仪器技术&#xff0c;有效实现了数据的采集、处理及回放&#xff0c;极大提高了无人机航线的控制精度…

Machine Learning Engineering Open Book 机器学习工程开放书

文章目录 一、关于 Machine Learning Engineering Open Book二、书籍目录三、关键对照表四、快捷方式 一、关于 Machine Learning Engineering Open Book 这是一个开放的方法、工具和分步说明集合&#xff0c;有助于成功训练和微调大型语言模型和多模态模型及其推理。 这是一…