【Java技术】用起来超爽的Maven—入门篇
- 格式:pdf
- 大小:274.55 KB
- 文档页数:4
maven命令参数
回答:
Maven是一个Java项目的构建工具,它基于项目对象模型(POM)来管理项目的构建过程。
在使用Maven构建项目时,我们需要使用一系列的命令和参数来完成各种构建任务。
下面是一些常用的Maven命令参数:
1. clean:清除项目中的所有构建产物和临时文件,以便重新构建项目。
2. compile:编译项目中的Java源代码。
3. package:将项目打包成一个可执行的JAR或WAR文件。
4. install:将项目构建产物安装到本地Maven仓库中,以便其他项目可以依赖它。
5. deploy:将项目构建产物部署到远程Maven仓库中,以便其他项目可以依赖它。
6. test:运行项目中的单元测试。
7. site:生成项目的文档网站。
8. dependency:tree:显示项目的依赖树,以便查看项目依赖关系。
9. -D参数:用于设置系统属性,例如mvn clean -DskipTests=true可以跳过测试阶段。
10. -P参数:用于激活指定的Maven配置文件,例如mvn clean -Pprod会激活名为prod的配置文件。
以上是一些常用的Maven命令参数,使用它们可以帮助我们更方便地构建和管理Java项目。
Maven的介绍及使⽤⼀、Maven简介 Maven 是⼀个项⽬管理⼯具,可以对 Java 项⽬进⾏构建、依赖管理,是⼀个⾃动化构建⼯具。
⾃动化构建⼯具:将原材料(java、js、css、html....)->产品(可发布项⽬) 编译-打包-部署-测试 -> ⾃动构建Maven的作⽤:1、管理jar包1. 增加第三⽅jar包(不需要⾃⼰下载jar包)2. 管理jar包之间的依赖关系(maven⾃动关联下载所有依赖的jar包)2、将项⽬拆分成若⼲个模块:借助于Maven可以将⼀个项⽬拆分成多个⼯程。
(例如爱洋葱)Maven能⼲的事情: 清理:删除编译的结果,为重新编译做准备。
编译:java->class 测试:针对于项⽬中的关键点进⾏测试,也可⽤项⽬中的测试代码去测试开发代码 报告:将测试结果进⾏显⽰ 打包:将项⽬中包含的多个⽂件压缩成⼀个⽂件,⽤于安装或部署(java项⽬打成⼀个jar包,web项⽬打成⼀个war包,⽗⼯程-pom) 安装:将打成的包,放到本地仓库,供其他项⽬使⽤。
部署:将打成的包,放到服务器上,准备运⾏。
Eclipse中的项⽬,要在Tomcat中运⾏,需要部署: a、通过eclipse中add and remove按钮进⾏部署 b、将Web项⽬打成⼀个war包,然后将该war包复制到Tomcat/webapps中即可 通常下载⼀个jar包,先在本地仓库中下载,如果本地仓库中不存在,则再联⽹到中央仓库(镜像)去下载。
约定配置: Maven 提倡使⽤⼀个共同的标准⽬录结构,Maven 使⽤约定优于配置的原则,⼤家尽可能的遵守这样的⽬录结构。
如下所⽰:⼆、Maven POM POM(项⽬对象模型) 是 Maven ⼯程的基本⼯作单元,是⼀个XML⽂件,包含了项⽬的基本信息,⽤于描述项⽬如何构建,声明项⽬依赖,等等。
执⾏任务或⽬标时,Maven 会在当前⽬录中查找 POM。
Maven中文手册Maven最早始于Jarkarta Turbine项目,目的是为了简化构建过程。
这个项目下面有几个子项目,每个子项目都有自己的Ant文件,但是区别很小,而且生成的JAR 文件都要check in到CVS中。
我们希望有一种标准的方式来构建这些项目,一种可以清晰描述项目的方式,一种易于发布项目信息的方式,一种在多个项目之间共享JARs 的方式。
这个结果就是产生了一个可以用于构建、管理任何基于java的项目。
我们希望我们创造的这个工具可以让Java开发者的日常工作更加轻松,并有助于理解基于java的项目.项目对象模型Maven是基于项目对象模型(POM)的概念而创建的。
在这个模型中,所有由Maven产生的 artifact都是清晰定义的项目模型的结果。
构建,文档,源码度量,源码交叉引用和其他任何由Maven plug-in 提供的东西都是由POM来控制的。
POM 处理机制这篇文档简单的描述了Maven执行过程中是如何处理POM的。
这里有一些简单的POM例子来展示继承机制和插值机制。
POM 插值机制POM(通常以project.xml的名字出现)现在已经被当作Jelly脚本来处理了。
大部分时候,用户无须关心project.xml文件是不是真正的Jelly脚本,但是,如果需要的话,也可以使用内置值。
我也不愿看到逻辑控制语句出现在project.xml中,但是由于 project.xml实际上已经是一个隐含的jelly的脚本,所以它会有足够的灵活性:-)。
下面是一个简单的例子。
<?xml version="1.0" encoding="ISO-8859-1"?><project><pomVersion>3</pomVersion><groupId>maven</groupId><artifactId>maven</artifactId><name>Maven</name><currentVersion>1.0-b5-dev</currentVersion><organization><name>Apache Software Foundation</name><url><logo>/images/jakarta-logo-blue.gif</logo></organization><inceptionYear>2001</inceptionYear><package>org.apache.${pom.artifactId}</package><logo>/images/${pom.artifactId}.jpg</logo><description>Maven is a project that was created in ${pom. inceptionYear}.</description><shortDescription>${} is a Java Project Managem ent Tool</shortDescription></project>POM 继承机制现在有一种简单方式可以用于在POM中进行继承,下面是一个简单的例子:<?xml version="1.0" encoding="ISO-8859-1"?><project><extend>project.xml</extend><groupId>super-extendo</groupId><artifactId>super-extendo<artifactId><name>Super Extendo</name><build><unitTest><includes><include>**/*Test*.java</include></includes><excludes><exclude>**/TestAll.java</exclude><exclude>**/*Abstract*.java</exclude></excludes></unitTest></build></project>目前对POM父对象的解析还相对较弱,现在对一层以上的继承还没有做过任何测试。
Maven常⽤命令及其作⽤、常见问题、常⽤命令使⽤场景举例⼀、Maven常⽤命令及其作⽤1、 maven clean:对项⽬进⾏清理,删除target⽬录下编译的内容2、 maven compile:编译项⽬源代码3、 maven test:对项⽬进⾏运⾏测试4、 maven packet:打包⽂件并存放到项⽬的target⽬录下,打包好的⽂件通常都是编译后的class⽂件5、 maven install:在本地仓库⽣成仓库的安装包,可供其他项⽬引⽤,同时打包后的⽂件放到项⽬的target⽬录下⼆、常⽤命令使⽤场景举例1、mvn clean package依次执⾏了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段package命令完成了项⽬编译、单元测试、打包功能,但没有把打好的可执⾏jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库2、mvn clean install依次执⾏了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段install命令完成了项⽬编译、单元测试、打包功能,同时把打好的可执⾏jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库3、mvn clean deploy依次执⾏了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段deploy命令完成了项⽬编译、单元测试、打包功能,同时把打好的可执⾏jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库三、常见问题(⼀)mvn clean install 和 mvn install 的区别1、根据maven在执⾏⼀个⽣命周期命令时,理论上讲,不做mvn install 得到的jar包应该是最新的,除⾮使⽤其他⽅式修改jar包的内容,但没有修改源代码2、平时可以使⽤mvn install ,不使⽤clean会节省时间,但是最保险的⽅式还是mvn clean install,这样可以⽣成最新的jar包或者其他包(⼆)maven两种跳过单元测试⽅法的区别1、 mvn package -Dmaven.test.skip=true不但跳过了单元测试的运⾏,同时也跳过了测试代码的编译2、 mvn package -DskipTests跳过单元测试,但是会继续编译。
eclipse创建maven java项目的方法与步骤在Eclipse中创建Maven项目是一种相对简单的过程。
以下是创建Maven Java项目的基本步骤:前提条件:确保你的Eclipse已经安装了Maven插件。
你可以通过Eclipse Marketplace安装"Maven Integration for Eclipse"插件,或者使用Eclipse自带的"Help" -> "Eclipse Marketplace" -> "Search" 中搜索"Maven" 来安装。
创建Maven项目的步骤:1. 打开Eclipse IDE。
2. 选择菜单栏中的"File" -> "New" -> "Other"。
3. 在弹出的对话框中,展开"Maven" 文件夹,然后选择"Maven Project"。
点击"Next"。
4. 在下一个对话框中,确保"Create a simple project" 处于选中状态,然后点击"Next"。
5. 在"Group Id" 和"Artifact Id" 字段中输入你的项目的组织和项目名称。
这两个字段通常用来唯一标识一个Maven项目。
点击"Finish"。
6. Eclipse会提示你是否要切换到Maven的"Java EE Perspective",选择"Yes"。
7. 现在,Eclipse将使用Maven Archetype创建项目结构。
你可以选择不同的Archetype,比如"maven-archetype-quickstart" 用于创建一个简单的Java项目。
idea中maven的使用一、什么是mavenMaven是一个项目管理工具,能够帮助开发人员自动化构建、依赖管理和项目报告等任务。
它基于项目对象模型(POM),通过使用XML文件来描述项目的配置信息。
二、为什么要使用maven1. 管理项目依赖在开发过程中,我们通常会引入许多第三方库来实现特定的功能,而这些库之间可能存在依赖关系。
使用maven可以很轻松地管理这些依赖关系,只需在POM文件中定义需要的库,maven会自动下载所需的依赖包。
2. 自动化构建和测试使用maven可以定义一系列的构建和测试任务,通过命令行或者IDE(如IDEA)中的插件来执行这些任务。
这大大简化了构建和测试的过程,提高了开发效率。
3. 项目报告和文档生成maven能够生成各种项目报告和文档,如测试覆盖率报告、代码质量报告、项目文档等。
这些报告和文档可以帮助我们更好地了解项目的情况,并且方便与团队成员进行沟通。
三、maven的核心概念1. 项目对象模型(POM)POM是maven的核心概念,它是一个XML文件,用于描述项目的配置信息。
在POM中可以设置项目的依赖、插件、构建方式等。
2. 依赖管理在POM中可以通过<dependencies>标签定义项目的依赖。
maven会根据这些定义去下载所需的依赖库,并且可以自动解决依赖之间的冲突。
3. 插件插件是maven的扩展机制,通过插件可以执行各种任务,如编译代码、运行测试、打包等。
maven默认包含了一些常用的插件,我们也可以自己编写插件来满足特定需求。
4. 生命周期maven的生命周期定义了一系列的阶段,每个阶段都代表了一个任务。
我们可以通过配置来执行指定的阶段,也可以自定义阶段来执行我们需要的任务。
四、在IDEA中使用maven1. 安装maven插件在IDEA中,默认是没有安装maven插件的,我们需要手动安装。
打开IDEA的设置页面,选择Plugins,搜索Maven插件进行安装。
【狂神说Java】JavaWeb⼊门到实战1---笔记转⾃:⽂章⽬录1、基本概念1.1、前⾔1.2、web应⽤程序web应⽤程序:1.3、静态web1.4、动态web2、web服务器2.1、技术讲解2.2、web服务器3、Tomcat3.1安装tomcat tomcat3.2、Tomcat启动和配置3.3、配置3.4、发布⼀个web⽹站4、Http4.1、什么是HTTPHTTP4.2、两个时代4.3、Http请求1、请求⾏2、消息头4.4、Http响应1、响应体2、响应状态码5、Maven5.1 Maven项⽬架构管理⼯具5.2下载安装Maven5.3配置环境变量5.4阿⾥云镜像5.5本地仓库5.6 ~ 5.13笔记-下载地址6、Servlet6.1、Servlet简介6.2、HelloServlet6.2、HelloServlet6.3、Servlet原理6.4、Mapping问题6.5、ServletContext1、共享数据2、获取初始化参数3、请求转发6.6、HttpServletResponse1、简单分类2、下载⽂件3、验证码功能6.7、HttpServletRequest获取参数,请求转发7、Cookie、Session7.1、会话7.2、保存会话的两种技术7.3、Cookie7.4、Session(重点)8、JSP8.1、什么是JSP8.2、JSP原理8.3、JSP基础语法JSP表达式jsp脚本⽚段JSP声明8.4、JSP指令8.5、9⼤内置对象8.6、JSP标签、JSTL标签、EL表达式9、JavaBean10、MVC三层架构10.1、以前的架构10.2、MVC三层架构11、Filter (重点)12、监听器13、过滤器、监听器常见应⽤14、JDBC15、SMBMS(超市管理项⽬)1、基本概念1.1、前⾔web开发:web,⽹页的意思,·静态webhtml,sss提供给所有⼈看的数据始终不会发⽣变化!动态web淘宝,⼏乎是所有的⽹站;提供给所有⼈看的数据始终会发⽣变化,每个⼈在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/ISP,ASP,PHP1.2、web应⽤程序web应⽤程序:可以提供浏览器访问的程序;a.html、b.html.….多个web资源,这些web资源可以被外界访问,对外界提供服务;你们能访问到的任何⼀个页⾯或者资源,都存在于这个世界的某⼀个⾓落的计算机上。
JAVA学习之maven的使⽤场景:最近使⽤springboot写⼀些⼩demo,发现到处都要使⽤maven,更离不开其中的pom.xml⽂件,所以这⾥对maven的常规使⽤作出⼀个整理。
⽂章结构:1. 安装配置maven环境2. maven⽬录结构3. HelloMaven4. 常⽤构建命令5. 使⽤archetype插件⾃动建⽴⽬录6. 坐标&仓库7. ⽣命周期&插件的使⽤8. pom.xml常⽤标签介绍9. maven依赖(范围、传递、冲突)10. 聚合&继承正⽂:1. 安装配置maven环境⾸先,在中下载maven组件。
进⼊官⽹后,在左边菜单找到Download选项,点击进⼊Download页⾯。
当然,我们⾸先要保证JDK安装好。
接下来,要在本地配置好maven的系统环境变量,新建⼀个maven_home的变量,然后在系统变量的path后⾯追加这个maven_home;接着,我们测试下maven安装成功没有(注意,⼀般我们都先安装好JDK,因为maven的命令应该是要借助jdk的):如图所⽰,显⽰了maven的版本信息跟jdk的版本信息,当然,我们也可以使⽤echo 查看下系统环境变量:到这⾥,我们对maven的环境配置就完成了。
其实这是第⼀种,我们下载jar包的形式,不过本⼈是使⽤第⼆种,直接安装eclipse(包含maven)的版本即可,⽐如我安装的版本即是⾃带的maven;接下来只需要配置好本地的系统变量即可。
诶,如果我们想要改变maven的版本呢,我们可以在eclipse当中的preferences当中改变:2. maven项⽬的⽬录结构先在这⾥插⼊⼀点个⼈对maven的理解,我们之前每个项⽬都需要有⾃⼰的jar包,但是这么多jar包很多有相同的,⽽这些jar包⼜是基于项⽬存放的,如果我们跨越项⽬这⼀层,统⼀管理jar包呢,这样不就可以节约很多空间和时间。
使用VSCode搭建简单Java开发环境(二、Maven环境)前篇搭建了最简单的可以调试Java代码的环境,本文将配置VSCode的Maven环境,使导入仓库
包更方便。
1. 首先配置可以正常使用的Maven环境。
2. 新建一个临时空目录,在其中创建必须的几个文件和文件夹,包括“pom.xml”、
“src/main/java”。
3. 修改VSCode中与Maven相关的配置,将Maven可执行文件(windows平台为“mvn.cmd”)
的绝对路径填写在“maven.executable.path”配置项中,并将Maven配置文
件“settings.xml”的绝对路径填写在“erSettings”配置项中。
4. 保存配置并重启VSCode,之后在“pom.xml”文件上右击,并选择“Update project
configration”。
5. 之后,VSCode的Java插件将会在工作区中生成相关的文件(“.classpath”、“target”等)。
6. 在工作区下方,即可选择Maven工程的常用命令。
7. 配置完成后,代码中可直接提示出“pom.xml”包含的包中的类。
你还在为怎样寻找、导入SSH相关依赖包纠结吗?
你还在为没有安装IDE开发工具不能编译、部署、运行项目而纠结吗?
你还在为公司项目目录结构怎样规范而纠结吗?
亲爱的纠结哥,只要你使用了Maven,一切不爽都会变得很爽了,就像春风拂过,迎刃而解,把不爽,变成爽,爽,爽。
一、下载安装:
下载地址:
/download.cgi
当前最新版本:
/maven/maven-3/3.2.5/binaries/apache-maven-3.2. 5-bin.zip
下载apache-maven-3.2.5-bin.zip之后解压缩到非中文、空格的目录;
比如D:\Java\apache-maven-3.2.5
以Window操作系统演示,我的电脑右键点击属性,高级系统设置
第一步.使用前必须先安装好JDK,配置2个环境变量
第二步.在把上面的2个环境变量配置到PATH的最前面
%JAVA_HOME%\BIN;%MAVEN_HOME%\BIN;
%%表示引用前面配置的环境变量的值,这样的好处是以后升级JDK或者MAVEN就直接修改系统变量里面的值,PATH里面不用修改。
第三步.打开cmd
输入mvn-v
如果出现如下信息,表示安装成功,没有出现请检查上面环境变量的配置,或者给我微博发送消息。
二、手动建立第一个Maven项目
目的:熟悉maven约定的目录结构
第一步.比如在d盘根目录,建立hello文件夹作为项目,同时建立Maven约定的目录结构
hello
--src
-----main
----------java
-----test
----------java
--pom.xml
第二步:在项目hello根目录建立pom.xml
<project xmlns="/POM/4.0.0"xmlns:xsi="http://ww /2001/XMLSchema-instance"xsi:schemaLocation="http://maven.ap /POM/4.0.0/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.itsource.maven</groupId>
<artifactId>hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>hello</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
第三步:在src/main/java/cn/itsource/maven目录下新建文件Hello.java package cn.itsource.maven;
public class Hello{
public String sayHello(String name){
return"Hello"+name;
}
}
第四步:在/src/test/java/cn/itsource/maven目录下新建测试文件HelloTest.java package cn.itsource.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest{
@Test
public void testHello(){
Hello hello=new Hello();
String results=hello.sayHello("World,欢迎来到源代码教育!");
assertEquals("Hello World,欢迎来到源代码教育!",results);
}
}
第五步:maven可以灰常方便使用下面命令实现项目构建,不过必须连接网络,然后maven 会自动从中央仓库/maven2,下载相应的jar文件,从而管理java项目。
会出现如下下载信息
a)打开cmd命令行,进入hello项目根目录执行mvn compile编译命令,查看根目录变化
b)cmd中继续录入mvn clean清理命令,然后再次查看根目录变化
c)cmd中录入mvn clean compile清理编译命令,查看根目录变化
d)cmd中录入mvn clean test测试命令,查看根目录变化
e)cmd中录入mvn clean package打包命令,查看根目录变化
f)cmd中录入mvn clean site生成网站命令,查看根目录变化
你还在等什么,赶快试试吧。