当前位置: 首页 > news >正文

Maven入门

Maven

Maven Wrapper

  1. 版本一致性

    • Maven Wrapper 允许你在项目中指定一个特定的 Maven 版本。这意味着所有开发人员和 CI/CD 环境都将使用相同版本的 Maven,从而避免由于版本不一致导致的问题。
  2. 简化设置

    • 新开发者克隆项目时,不需要手动安装 Maven。只需使用 mvnw(或 mvnw.cmd)脚本,系统会自动下载并使用项目指定的 Maven 版本。
    • 只需要第一个创建文件的人wrap这个项目,后面的人甚至不需要有Maven
  3. 提高可移植性

    • 因为 Maven Wrapper 脚本是项目的一部分,所以无论在什么平台上(Windows、Linux、Mac OS),都可以一致地使用 Maven。这对于跨平台开发特别有用。
  4. 便于更新

    • 当需要更新 Maven 版本时,只需修改项目中的 pom.xml 文件并运行 mvn wrapper:wrapper,就能轻松实现所有开发人员和环境的升级。
  5. 减少环境问题

    • 由于 Maven Wrapper 可以自动下载正确的 Maven 版本,因此减少了由于环境差异(如不同操作系统、不同版本等)引起的问题。

对象模型(POM)

groupId:标识组织或公司,通常是域名的反向形式(例如 com.jetbrains.marco)。

artifactId:项目的标识符,通常是项目名称(例如 maven-tutorial)。

version:项目的版本号,1.0-SNAPSHOT 表示这是一个开发中的版本。

依赖项:

<dependency><groupId>com.mpatric</groupId><artifactId>mp3agic</artifactId><version>0.9.1</version>
</dependency>

此后我不用手动下载和配置MP3库,它会自动从网站上下载,但要用的时候还是需要import。

IDEA中的插件Ctrl + Shift + M搜索maven,可以直接复制,非常方便。

指令

maven clean:删除target文件

maven compile:compile所有的src底下的main/java文件,放入target,

maven compile test:先看main/java文件,再看test文件

mvn package:在编译成功后,将项目打包成 .jar.war 文件。

mvn test功能:编译项目的主代码和测试代码,并运行测试。

mvn install:jar放入本地Maven储存库

所有操作都包括了前面的操作

clean compile test package install

Convention

src里有main和test

main里面有java和resource(放静态图片等)

test里有java也可以有resource

多模块

父项目

父项目的主要作用就是管理和聚合子项目(模块)。在 Maven 中,父项目提供了一种方式来集中管理多个子项目的依赖、插件和构建配置,减少重复配置,并确保所有子项目共享相同的构建环境和依赖版本。

他不会生成jar,他只有一个pom文件。

子项目中需要指定父项目(在packaging中,父项目是poem,子项目是jar)

http://www.lryc.cn/news/460895.html

相关文章:

  • Chromium 中window.DOMParser接口说明c++
  • linux 安装gitlab
  • java基础(5)继承与多态
  • Flink消费Kafka实时写入Doris
  • 实现Web QQ音乐打开现有新标签页切换音乐
  • 从底层结构开始学习FPGA(15)----时钟结构(通俗版)
  • MacOS Sublime Text 解决中乱码
  • Python画笔案例-084 绘制 3D立方体
  • “八股文”面试:助力、阻力还是空谈?
  • 如何实现弹出式窗口
  • Lua 函数
  • HTML_文本标签
  • 基于SpringBoot+Vue+uniapp的诗词学习系统的详细设计和实现(源码+lw+部署文档+讲解等)
  • 健康睡眠的重要性
  • 知道ip地址怎么看网络地址
  • 精心整理85道Java微服务面试题(含答案)
  • MongoDB聚合管道(Aggregation Pipeline)
  • 移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——6.vector(无习题)
  • SpringBoot技术支持的桂林景点导航
  • 利用vmware在移动硬盘安装Ubuntu2go
  • Spring Boot:中小型医院网站的敏捷开发
  • 241011-在jupyter中实现文件夹压缩后下载
  • .NET 一款用于转储指定进程内存的工具
  • Splunk 修补关键漏洞,包括远程代码执行漏洞
  • 搭建一个vue3+vite框架
  • 【含文档】基于Springboot+Vue的公交管理系统(含源码+数据库+lw)
  • 自闭症儿童能否适应学校生活:提供专业辅助,助力顺利融入
  • MQTTnet.Server同时支持mqtt及websocket协议
  • 【数据结构】二叉树(一)遍历
  • 【C++ 贪心】1616. 分割两个字符串得到回文串|1868