Java项目管理01-Maven基础

news2024/10/7 16:19:18

一、Maven的常用命令和生命周期

1.Maven的常用命令使用方式

  • complie:编译,将java文件编译为class字节码文件

  • clean:清理,删除字节码文件

  • test:测试,运行项目中的test类

  • package:打包,根据项目类型自动打包

  • install:安装,将你的项目安装到本地仓库

(1)命令窗口模式
  • 在项目目录下,按住shift右键,选择在此打开powershell窗口,项目目录如下图

  • 或者在该目录上方的地址栏输入cmd也可以

  • 输入mvn -常用命令,即可

(2)idea

方式一:

  • maven项目,无法断点调试

方式二:

  • 安装Mavenhelper插件,可以断点调试

2.Maven生命周期

  • Maven构建项目生命周期描述的是一次构建过程经历经历了多少个事件

  • Maven 对项目构建的生命周期划分为3套

    • clean:清理工作

    • default:核心工作,例如编译,测试,打包,安装等

    • site:产生报告,发布站点等

同一生命周期内,执行后边的命令,前边的所有命令会自动执行

更多命令可自行查阅

二、Maven的使用

1.Maven坐标详解

(1)Maven坐标:
  • Maven 中的坐标是资源的唯一标识

  • 使用坐标来定义项目或引入项目中需要的依赖

(2)Maven坐标主要组成:
  • groupld:定义当前Maven项目隶属组织名称 (通常是域名反写)

  • artifactld:定义当前Maven项目名称 (通常是模块名称,例如 order-service、goods-service)

  • version:定义当前项目版本号

2.Maven项目的创建

  • new model

  • 选择Maven

  • 选择合适的JDK

  • next

  • 填写模块名,【组织名称,项目名称,版本】个人练习可不写,默认也可以,但要记住这三个

Maven的目录结构:

3.Maven项目的导入

方式一:

  • 点击项目右侧的Maven

  • 之后点击+号

  • 选择要导入项目中的pom文件即可

方式二:

  • 没有显示Maven

  • 点击view

  • 选择Appearance

  • 之后点击Tool Window Bars即可

  • 之后回到方式一

4.使用坐标导入jar包

国外:

  • 打开maven仓库地址

  • 搜索jar包名称,选好版本

  • 将Maven标签中的内容复制下来

  • 粘贴到pom文件中即可

  • 更新Maven

国内镜像:

  • 打开镜像仓库

  • 搜索jar包名称,选好版本

  • 点击pom

  • 复制依赖

  • 粘贴

  • 更新Maven

5.Maven刷新时机设置

如果嫌手动刷新太麻烦,可以将其设置为自动

  • file

  • settings

  • Build, Execution, Deployment

  • 右侧build Tools

6.Maven快速导包

前提:本地仓库有

  • alt + ins,选择dependency

  • 直接搜索jar名称

  • 点击即可

7.Maven依赖范围管理

通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围: 编译环境、测试环境、运行环境

scope默认值:compile

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1433388.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IDEA新建文件夹后右击不能创建class类排错方法

目录 1 查看自身文件名是否为关键词 2 查看是否被“蓝色文件夹”给包含了 3 检查设置那边的class模板 4 报错解决 1 查看自身文件名是否为关键词 如下使用了 Java中的关键词"class"所以才无法创建包 ---------------------------------------------------------…

51单片机之LED灯模块篇

御风以翔 破浪以飏 🎥个人主页 🔥个人专栏 目录 点亮一盏LED灯 LED的组成原理 LED的硬件模型 点亮一盏LED灯的程序设计 LED灯闪烁 LED流水灯 独立按键控制LED灯亮灭 独立按键的组成原理 独立按键的硬件模型 独立按键控制LED灯状态 按键的抖动 独立按键…

KubeMQ简介

如今,企业组织之间的竞争是残酷的。每个组织都希望在其系统之间即时、实时或近乎实时地交换信息,以便做出更好、更快的决策。为了使此类信息持续流动,应用程序组件之间的集成需要无缝。为了充分利用云计算的所有优势,如今构建的应…

双非本科准备秋招(16.1)—— 力扣二叉树

1、101. 对称二叉树 检查是否对称,其实就是检查左节点等不等于右节点,我们可以用递归来做。 如果左右节点都为null,说明肯定对称呀,返回true。 如果一个为null一个不为null,或者左右的值不相等,则为false。…

k8s-深入理解Service(为Pod提供负载均衡和发现)

一、Service存在的意义 二、Service的定义和创建 Pod与Service的关系 Service的定义和创建 三、Service使用NodePort对外暴露应用 四种类型,常用的三种: 指定Service的NodePort端口 在实际生产中,k8s的集群不会直接暴露在公网中&#xff0c…

free5GC+UERANSIM

使用arp、ifconfig、docker inspect及网桥brctl 相关命令,收集容器IP及Mac地址相关信息,可以梳理出UERANSIMfree5GC模拟环境组网,如下图所示: 如上图所示:环境基于ubuntu 18.04 VMware虚机部署,5GC网元分别…

【Redis】字符串原理--简单动态字符串SDS

一.SDS定义 free 属性值为0,标识SDS没有分配任何未使用空间。len 属性值为5,标识SDS保存了一个5字节长度的字符串。buf 属性是一个char类型数组,数组的前5个字节保存了,R e d i s 五个字符,最后一个保存空字符串 \0…

uniapp android和微信小程序实现PDF在线预览

在使用uniapp开发移动端时,微信开发者工具里webview能正常打开后端接口返回的pdf文件流。正式发布后,在配置了业务域名和服务器域名的前提下,预览pdf文件却只能看到白屏,因此我猜测微信小程序不能通过webview读取文件流。这个想法…

Leetcode—32. 最长有效括号【困难】(动态规划及ranges::max()使用)

2024每日刷题&#xff08;110&#xff09; Leetcode—32. 最长有效括号 栈实现代码 class Solution { public:int longestValidParentheses(string s) {stack<int> st;st.push(-1);int n s.size();int maxn 0;for(int i 0; i < n; i) {if(s[i] () {st.push(i);}…

vulnhub靶场之Thales

一.环境搭建 1.靶场描述 Description : Open your eyes and change your perspective includes 2 flags:user.txt and root.txt. Telegram: machineboy141 (for any hint) This works better with VIrtualBox rathe than VMware 2.靶场地址 https://www.vulnhub.com/entry/t…

platform tree架构下i2c应用实例(HS3003)

目录 概述 1 探究platform tree下的i2c 1.1 platform tree下的i2c驱动 1.2 查看i2c总线下的设备 1.3 使用命令读写设备寄存器 2 认识HS3003 2.1 HS3003特性 2.2 HS3003寄存器 2.2.1 温湿度数据寄存器 2.2.2 参数寄存器 2.2.3 一个参数配置Demo 2.3 温湿度值转换 2.…

ubuntu22.04 经常死机,鼠标,键盘无响应

一、现象说明 1. 开机一小时后&#xff0c;突然之间网络掉线&#xff0c;鼠标、键盘无反应。 2.强制重启后&#xff0c;恢复正常。 3.多次重复出现该问题。 二、环境说明&#xff1a;内核、显卡 三、异常日志&#xff1a; /var/log/syslog: 四、问题解答&#xff1a; 1.…

Linux 路由配置与使用

概念 路由信息用于指导数据包从源地址查找到目的地址传输路径的信息&#xff1b; 路由分类 根据路由信息的来源分为静态路由和动态路由 静态路由 由管理员手动配置的路由表项信息&#xff0c;根据路由形式的不同&#xff0c;静态路由又可细分为&#xff1a; 直连路由&#xf…

asp.net core 依赖注入 实例化对象实例

在面向对象编程中&#xff0c;推荐使用面向接口编程&#xff0c;这样我们的代码就依赖于服务接口&#xff0c;而不是依赖于实现类&#xff0c;可以实现代码解耦。 名称解释&#xff1a; 我们把负责提供对象的注册和 获取功能的框架叫作“容器”&#xff0c; 注册到容器中的对象…

java设计模式:观察者模式

在平常的开发工作中&#xff0c;经常会使用到设计模式。合理的使用设计模式&#xff0c;可以提高开发效率、提高代码质量、提高代码的可拓展性和维护性。今天来聊聊观察者模式。 观察者模式是一种行为型设计模式&#xff0c;用于对象之间一对多的依赖关系&#xff0c;当被观察对…

vue前端+nodejs后端通信-简单demo

本文记录vue前端nodejs后端通讯最简单的方法&#xff0c;供广大网友最快速进入全栈开发。 技术架构 前端 vue axios 后端 nodejs express 一、前端部分-搭建VUE 项目 vue create Vnodenpm run serve 启动&#xff1b; 具体操作步骤&#xff0c;请自行百度&#xff0c;这里没…

MySQL-----约束

目录​​​​​ 约束 一 主键约束 1-1 操作-添加单列主键 1-2 操作-添加多列主键 1-3 修改表结构添加主键 1-4 删除主键约束 二 自增长约束 2-1 指定自增长字段的初始值 2-2 删除自增列 三 非空约束 3-1 创建非空约束 3-2 删除非空约束 四 唯一约束…

算法学习——华为机考题库10(HJ64 - HJ69)

算法学习——华为机考题库10&#xff08;HJ64 - HJ69&#xff09; HJ64 MP3光标位置 描述 MP3 Player因为屏幕较小&#xff0c;显示歌曲列表的时候每屏只能显示几首歌曲&#xff0c;用户要通过上下键才能浏览所有的歌曲。为了简化处理&#xff0c;假设每屏只能显示4首歌曲&a…

ffmpeg的使用,安装,抽帧,加水印,截图,生成gif,格式转换,抓屏等

实际使用中总结的关于ffmpeg对视频的处理的记录文档 具体信息&#xff1a; http://ffmpeg.org/download.html 官网下载ffmpeg 关于ffmpeg的安装详细步骤和说明 装ffmpeg 方式,Linux和windows下的 http://bbs.csdn.net/topics/390519382 php 调用ffmpeg , http://bbs.csdn.net/t…

『 C++ - Hash 』闭散列与开散列哈希表详解及其实现 ( 万字 )

文章目录 &#x1f47e; 哈希表概念&#x1f47e; 常见哈希函数&#x1f38f; 直接定址法&#x1f38f; 除留余数法 &#x1f47e; 哈希冲突的解决方案&#x1f38f; 闭散列与闭散列哈希表的实现&#x1f390; 闭散列哈希表的节点设置与基本架构&#x1f390; 闭散列哈希表的插…