Maven入职学习

一、什么是Maven?

概念:

Maven是一种框架。它可以用作依赖管理工具、构建工具。

它可以管理jar包的规模、jar包的来源、jar包之间的依赖关系。

它的用途就是管理规模庞大的jar包,脱离IDE环境执行构建操作。

具体使用:

 工作机制:

学习Maven一定要理解,工程的构建过程:

Maven的作用路径:

二、配置Maven

1.官网下载Maven

注意区分别下错了!

 2.解压就能用

3. 指定本地仓库位置

4.配置阿里云提供的镜像仓库

 

 5.配置Maven工程的基础JDK版本

 6.配置环境变量

有四步:检查JAVA_HOME,看是否配置好了JDK。

检查Maven_HOME,看是否配置好了Maven。

 

 最后,输入mvn -v 进行测试。

三、Maven坐标

就类似于数学中的空间坐标值。X,Y,Z 

基本概念:

 

 

四、Maven创建工程

基本步骤:

 Maven创建工程的命令就是:mvn archetype:generate

创建工程需要指定两个坐标。就是Maven的三个坐标需要手动指定。如下图:

 2.进入到这个工作空间。

解读POM.xml文件:

最主要的还是那个dependence标签。

 

五、Maven的核心概念:POM

基本概念:

Maven的核心就是POM文件。项目对象模型。需要用到Maven的命令进行操作。和之前创建工程的命令类似。后面的命令更加详细。具体实现Maven工程。

实现Maven工程的操作: 

和创建Maven工程不一样。这些命令有:清理操作、编译操作、测试操作、打包操作、安装操作。

注意:一定是创建工程之后!!!然后进入这个工作空间!是工作空间,也就是pom.xml文件所在目录。不是进入pom.xml文件里!

 

 

 

 

 小结:

使用Maven创建工程和使用mvn install命令的区别。

使用Maven创建工程是一开始定义好了工作目录,工作空间。

使用mvn install命令是将自定义的本地jar包导入本地仓库,这样就可以在pom中直接通过dependency的方式来引用。

mvn install命令,用于在git获得别人的开源项目,然后使用这个命令,可以将别人的项目存入自己的本地仓库。如果没有这个命令,好像会无法运行?会出现很多的红色报错。

还有一种解释:就是将自己的项目导入自己的本地仓库。这样在其它项目里就可以直接从自己的本地仓库调用创建好的方法。

六、创建Maven版的web工程

前面使用的方式是创建Java工程。

基本用法:

需要记忆一下命令。不过在IDEA会更加方便。

 

 基本步骤:

有不清楚的地方,建议自己去找百度。

 

 小结:总的步骤就是:使用maven命令创建web工程。然后创建servlet类。在web.xml文件注册servlet类。编写JSP网页。在POM.xml文件配置对servlet类的依赖。将web工程进行打包。最后将war包部署到服务器(Tomcat)上运行。

部署包:将打包好的 war 包放在 tomcat 目录下的 webapps 里。

七、让web工程依赖Java工程

基本概念:

基本步骤:

由于后面视频有点看不懂了。需要沉淀,实训。停一下。


第一次实训:

现阶段的目标是熟练使用maven工程,创建Java工程和创建JavaWeb工程。

然后在使用maven创建Java工程的时候,也使用IDEA创建Java工程。

碰到问题:

创建Java工程:

手动创建Java工程:

手动创建Maven的Java工程:mvn archetype:generate。

   然后通过mvn  test  。测试编译。在编译的时候报错了。出现的问题是:无效的发现版本,在setting.xml文件出错。原因是jdk设置的版本名称是11.0.11。改为11之后就解决了。

IDEA工具创建Java工程:

第一种创建空项目,这种情况下,就是Java程序。但是它不是maven工程。这种情况下的输出是out文件

只有Maven工程的编译才是target文件

第二种,通过maven创建。但是找不到Java的工程。最多只有maven_web的工程。

未知,需要找一下资料怎么创建。通过IDEA创建Maven的Java工程。

这篇文章讲的很好,解决了我使用IDEA创建Maven的Java工程的问题,原来版本号的选择应该是:

1.0-SANPSHOT

 之前就是不知道怎么写版本号出错。(通过实验得到第一种方式不可以,还是使用第二种方式创建Java工程!!!)而且这篇文章也讲了第二种方式解决创建Java工程。

Maven和Git_git pom_随风者1997的博客-CSDN博客

Maven操作命令的作用:

 我们可以看到,它会在maven仓库里面创建文件。而且,也会在这个工程里面创建一个jar包,他的位置在此项目里面的target目录下。

通过查略资料得到package它不会把jar包部署到本地仓库和远程私服仓库。下图:

而仓库的概念,我们在学github的时候,知道仓库的作用是什么了。因此我得到一个结论。比如:我们使用github获取到一个IDEA工程的时候,如果他是一个maven形式的工程。我们就需要用到mvn install命令将其部署到本地mvn仓库。否则它会因为缺少各种各样的包而报错。


明天运行项目、Xshell 5和Xftp 5 这两个软件也需要进行学习。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MATLAB第67期】# 源码分享 | 基于MATLAB的morris全局敏感性分析

【MATLAB第67期】# 源码分享 | 基于MATLAB的morris全局敏感性分析 一、代码展示 clear all npoint100;%在分位数超空间中要采样的点数(计算次数iternpoint*(nfac1) nfac20;%研究函数的不确定因素数量 [mu, order] morris_sa1((x)test_function(x), nfac, npoint)for t1:size…

IELTS图表类作文基础知识

表格可以用table或chart来表示。 其实,数据类图表除了可以用chart表示,也可以用其他单词。 表格又可以称为table。而带有几何图形的图表可以用graph来表示。 像饼状图、折线图、柱状图这样用几何图形,或者直接用表格来呈现数据的形式&#x…

【Linux升级之路】5_基础IO

🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【Linux升级之路】 ✒️✒️本篇内容:文件操作,文件管理,重定向,简易shell添加重定向功能,文件属…

如何在风控引擎中快速增加策略

风控策略是由规则和模型组成的、用以实现风险控制目标的集合。模型与规则相辅相成,相互补充,在不同的业务阶段彼此的侧重点不同。新业务上线期,数据量不足,策略以规则为主;当业务运行一段时候后,数据有了一…

【JavaEE进阶】Spring创建与使用

文章目录 一. 创建 Spring 项目1.1 创建一个Maven项目1.2 添加Spring依赖1.4. 创建一个启动类 二. 将 Bean 对象存放至 Spring 容器中三. 从 Spring 容器中读取到 Bean1. 得到Spring对象2. 通过Spring 对象getBean方法获取到 Bean对象【DI操作】 一. 创建 Spring 项目 接下来使…

如果你需要使用重试机制,请使用Spring官方的Spring Retry

Spring Retry 是 Spring Framework 中的一个模块,提供了一种简单的方式来在应用程序中实现重试机制。 在应用程序中,如果遇到了一些不可避免的错误,比如网络连接失败、数据库连接失败等,我们通常需要对这些错误进行重试&#xff…

excel 方框内打钩符号

大写字母 R ,字体选择 Wingdings 2

[mongo]应用场景及选型

应用场景及选型 MongoDB 数据库定位 OLTP 数据库横向扩展能力,数据量或并发量增加时候架构可以自动扩展灵活模型,适合迭代开发,数据模型多变场景JSON 数据结构,适合微服务/REST API基于功能选择 MongoDB 关系型数据库迁移 从基…

电脑怎么查看连接过的WIFI密码(测试环境win11,win10也能用)

电脑怎么查看连接过的WIFI密码 方法一:适用于正在连接的WIFI密码的查看 打开设置 点击“网络和Internet”,在下面找到“高级网络设置”点进去 在下面找到 “更多网络适配器选项” 点进去 找到 WLAN ,然后双击它 5.然后点击“无线属性” 6.…

MongoDB数据库操作及操作命令

目录 一、基础概念 二、安装mongod 三、命令交互数据库 (1)数据库命令 (2)集合命令 (3)文档命令 四、Mongoose (1)增加一条数据 (2)插入多个数据 &am…

MinIO:微服务中上传图片流程

1、在nacos中配置minio参数 2、controller层 package com.heima.wemedia.controller.v1;import com.heima.model.common.dtos.ResponseResult; import com.heima.wemedia.service.WmMaterialService; import org.springframework.beans.factory.annotation.Autowired; import …

Linux项目部署

目录 一JAVAWeb环境的部署【安装JDK,MySQL数据库,Tomcat】 二.手工部署SpringBoot项目(写的最好的) 1.在IDEA中开发SpringBoot项目并打成jar包--点击右侧的Maven执行package命令 2.将jar包上传到Linux服务器 3.执行以下命令&a…

vcode开发go

配置环境变量 go env -w GO111MODULEon go env -w GOPROXYhttps://goproxy.cn,direct 创建文件夹 mkdir hello cd hello go mod help go mod help 初始化一个项目 go mod init hello 获取第三方包 go get github.com/shopspring/decimal 将依赖包下载到本地 go mod …

Linux安装配置nginx+php搭建

Linux安装配置nginxphp搭建 文章目录 Linux安装配置nginxphp搭建1.nginx源码包编译环境和安装相应的依赖1.1 安装编译环境1.2 安装pcre库、zlib库和openssl库 2.安装nginx2.1 在[nginx官网](https://nginx.org/en/download.html)上获取源码包并进行下载2.2 进行解压编译 3.启动…

ROS实现机器人移动

开源项目 使用是github上六合机器人工坊的项目。 https://github.com/6-robot/wpr_simulation.git 机器人运动模型 运动模型如下所示:👇 机器人运动的消息包: 实现思路:👇   为什么要使用/cmd_vel话题。因为这…

成功解决ubuntu-22.04的sudo apt-get update一直卡在【0% [Waiting for headers]】

成功解决ubuntu-22.04的sudo apt-get update一直卡在【0% [Waiting for headers]】 问题描述解决方案 问题描述 在下载安装包的时候一直卡在0% [Waiting for headers],报错信息如下: Get:1 file:/var/cudnn-local-repo-ubuntu1804-8.5.0.96 InRelease […

[LitCTF 2023]Http pro max plus

打开环境后提示说,只允许在本地访问,本地访问,还是想到了XFF字段 好家伙的,直接被嘲讽,还是了解太少了,都不知道还有没有其他方式可以控制ip地址信息 经过查看wp,得知一种新的方式 Client-IP …

在 Android 上使用机器学习套件检测人脸

须知事项 此 API 需要 Android API 级别 19 或更高级别。确保应用的 build 文件使用的 minSdkVersion 值不小于 19。 请务必在您的项目级 build.gradle 文件中的 buildscript 和 allprojects 部分添加 Google 的 Maven 代码库。 将 Android 版机器学习套件库的依赖项添加到模…

nginx编译以及通过自定义生成证书配置https

1. 环境准备 1.1 软件安装 nginx安装编译安装以及配置https,需要gcc-c pcre-devel openssl openssl-devel软件。因此需要先安装相关软件。 yum -y install gcc-c pcre-devel openssl openssl-devel wgetopenssl/openssl-devel:主要用于nginx编译的htt…

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

1.今天开发了一套服务程序,使用的是Odbc连接MySql数据库, 在我本机用VS打开程序时,访问一切正常,当发布出来装在电脑上,连接数据库时提示: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定…