Java基础笔记(Maven入门)

1 Maven

《Maven安装与配置》

Maven 是一个 Java 项目管理和构建工具,它提供了:

  • 标准化的项目结构
  • 标准化的构建流程
  • 依赖管理:它使用 pom.xml 文件定义项目内容,该文件只需声明依赖项,而Maven会自动下载该依赖项并导入到 classpath

Maven 使用如下图所示早已预定好的目录结构:
Maven目录结构

1.1 依赖管理

1.1.1 pom.xml 文件结构

在这里插入图片描述

  • pom.xml 是一个 XML 文件,它的 根元素<project>

  • 使用 <groupId><artifactId>version 表示当前项目的唯一标识

  • <packaging> 标签表示打包方式,《maven之packaging标签》

    • 默认指定为 jar,表示项目打包成一个 jar 包,jar 包就是 java 的类进行编译生成的 class 文件就行打包的压缩包而已,里面就是一些 class 文件。在其它项目引用该 jar 包时,该 jar 包依赖的其它 jar 包也要同时引用。
    • 指定为 war,表示项目打包成一个 war 包,与 jar 包不同在于,它会将项目中依赖的所有 jar 包都放在 WEB-INF/lib 这个文件夹下,因此 war 包非常适合部署时使用,不再需要下载其他的依赖包,能够使用户拿到 war 包直接使用(放在 tomcat 的 webapps 目录下,启动即可)
    • 构建聚合工程的时候,父级项目的 POM 文件的 <packaging> 标签必须显式声明为 pom,父级的 pom 文件只作项目的子模块的整合,在 maven install 时不会生成 jar/war 压缩包。
  • <properties> 标签用于定义一些用于 XML 文件的一些变量

  • <dependencies> 标签用于描述依赖信息

有时候Maven默认创建的项目使用 JDK1.5,在 <properties> 中添加

<java.version>1.8</java.version>
<!-- 表示源代码使用 1.8 格式 -->
<maven.compiler.source>1.8</maven.compiler.source>
<!-- 编译使用 1.8  -->
<maven.compiler.target>1.8</maven.compiler.target>

如果想要一劳永逸就需要修改 Maven 安装目录下的 settings.xml 文件了,该文件还包含设置中央仓库的镜像仓库,本地仓库的目录地址

Maven 通过解析依赖关系确定项目所需的 jar 包,往pom.xml 文件中的 <dependencies> 标签添加 <dependency> 标签用以添加依赖,其中 <dependency> 标签内部有一个 <scope> 标签,它表示该依赖的作用域,有如下值:

  • compile:默认值,编译时需要该 jar 包,如 commons-logging
  • test:编译 Test 时需要该 jar 包,如 junit
  • runtime:编译时不需要,当运行时需要,如 log4j
  • provided:编译时需要到,但运行时由 JDK 或某个服务器提供,如 servlet-api

1.2 构建流程

Maven 的生命周期(lifecycle)由一系列阶段(phase)构成,常用的阶段、构建流程有:

  • clean:删除所有编译生成的文件
  • compile:编译源码,编译测试源码
  • test:运行测试
  • package:打包为 jarwar

有些阶段依赖于其它的阶段,有些则是独立的,比如要执行 test 就必须执行 compile
使用 Maven 构建项目就是执行Lifecycle,执行Lifecycle就是按顺序执行一系列Phase,比如在命令行中输入 mvn compile 就是执行 compile 阶段,输入 mvn clean test 就是执行 cleancompiletest 这些阶段。
每执行一个Phase,都会执行该phase绑定的若干Goal,Goal是最小执行任务单元

1.3 使用插件

Maven 通过调用相应的插件执行阶段,比如阶段 clean 对应的插件是 clean 插件

Maven自带的插件的如 clean 插件无需显式引用,但使用自定义的 Maven 插件时就需要在 pom.xml 文件的 <build> 标签内的 plugins 标签进行添加了,相关的使用方法需要到相应插件的官方文档中查看,如:

<project>
	....
	<build>
		<plugins>
			<!-- dao,mapping,bean 文件生成器创建依赖 -->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.7</version>
				<dependencies>
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>6.0.5</version>
					</dependency>
				</dependencies>
				<!-- dao,mapping,bean 文件生成器核心配置文件 -->
				<configuration>
					<configurationFile>${basedir}/src/main/resources/generatorConfig.xml</configurationFile>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

1.4 模块化管理

Maven 支持模块化管理,可以将一个的项目拆成几个大模块。如果模块A依赖模块B,则模块A需要模块B的 jar 包才能正常编译,正常情况下都是从中央仓库中获取模块依赖,还有一种就是从本地仓库中获取,我们可以通过

mvn clean install

这个命令将自定义的jar包发布在本地仓库中,同时还有使用模块化编译,使用模块化编译可以新建一个没有Java代码的Maven项目,在 pom.xml 文件中添加 modules 标签,指明模块之间编译,比如:

<project>
	<modules>
		<module>../parent</module>
		<module>../greeting</module>
		<module>../hellomaven</module>
	</modules>
</project>

此时在该Maven文件中执行编译,就会在各自模块的 target 目录下输出相应的编译结果,在该文件中无需声明模块间的依赖顺序,Maven会自动编译处理。

操作sqlserver时,要引入 sqljdbc4.jar 包,Maven中央库中并没有这个包,此时就需要从网上下载并发布到Maven的本地库中,在下载的包的文件目录下打开命令行,输入命令 mvn install:install-file -Dfile=sqljdbc4.jar -Dpackaging=jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0 即可,随后就可以在 pom.xml 文件中添加依赖。

1.4.1 依赖配置继承

Maven 的 pom.xml 配置文件可以通过继承统一定义重复配置,实际上就是创建一个没有Java代码的Maven项目,将 pom.xml 文件中的 <packaging> 标签设置值为 pom ,此时该文件就可以作为 parent 文件以供继承,在派生的 pom.xml 文件中需要添加 <parent> 标签,该标签内部包含了父类 pom.xml 文件的 <groupId><artifactId><version> 标签相应的属性值和 <relativePath> 标签指明父类文件的相对路径。

<project>
	...
	<parent>
		<groupId></groupId>
		<artifactId></articfactId>
		<version></version>
		<relativePath></relativePath>
	</parent>
</project>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要配置Java项目使用Maven,需要进行以下步骤: 1. 首先,确保已经安装了Java Development Kit(JDK)。可以通过在命令行运行“javac -version”来验证JDK是否已经正确安装。 2. 接下来,下载并安装MavenMaven是一个开源的构建工具,可以在Maven官网上下载到最新版本的安装包。安装完成后,可以通过在命令行运行“mvn -v”来验证Maven安装是否成功。 3. 配置环境变量。将Maven的bin目录添加到系统的PATH环境变量中,这样在命令行下就可以直接使用mvn命令。 4. 创建Maven项目。在命令行下,进入你想要创建项目的目录,并执行“mvn archetype:generate”命令,在模板列表中选择一个适合的模板,输入相关信息,如groupId、artifactId、version等。这样就成功创建了一个基本的Maven项目结构。 5. 在项目的pom.xml文件中添加所需的依赖。通过在pom.xml文件中添加<dependencies>标签,并在其中声明所需的依赖项,可以告诉Maven哪些外部库需要被下载并包含在项目中。 6. 编译和构建项目。在命令行下,进入项目的根目录,并执行“mvn compile”命令,Maven将根据pom.xml文件中的依赖项下载所需的库,并编译项目。 7. 运行和测试项目。可以通过在命令行下执行“mvn exec:java”命令运行Java应用程序,或者使用Maven的测试框架来运行测试用例。 8. 部署项目。可以通过在命令行下执行“mvn deploy”命令将项目部署到远程仓库或者本地仓库中,以供其他项目使用。 以上是配置Java项目使用Maven的基本步骤,通过Maven,可以简化项目构建和管理的过程,提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值