目录
maven
Apache Maven 是一个项目管理和构建的工具(软件),能更方便的来管理和构建项目。Maven 使用其项目对象模型(POM)和一组插件
构建项目,Maven 可以通过一段描述信息来管理项目的构建、报告和文档
。
Maven 提供了一些有用的项目信息,这些信息一部分来自POM
,一部分来自项目的源
。
POM
项目对象模型(POM)是 Maven 中的基本工作单元。是一个XML文件,包含有关项目的信息和 Maven 用于构建项目的配置细节。在执行任务或目标文件时,Maven 会先在当前目录中查找POM,读取POM,然后从中获取所需的配置信息,最后去执行目标文件。
个人理解:就是通过 pom.xml 配置文件,以配置信息的形式引入获取项目依赖的 jar 包,并且每个项目是可以共享同一个 jar 包,而不要对每个项目单独手动导入 jar 包。
最小的 POM:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1</version>
</project>
project:根标签
modelVersion:should be set to 4.0.0
groupId:项目组名.
artifactId:项目名
version:该项目包下项目版本
POM 要求所引入依赖的 jar 包必须含有这三个配置信息 groupId、artifactId 和 version。这三个值构成了依赖 jar 包的完全限定构件名称(jar 包的坐标),这样 maven 就能准确地为项目引入所需的依赖 jar 包。如上代码示例的完全限定构件名称为"com.mycompany.app:my-app:1"。
如果没有在 POM 配置指定的依赖,Maven 将使用默认的配置依赖,即在联网的状态下从中央仓库下载依赖的 jar 包。
maven 安装配置
下载安装:
直接从官网下载 Binary 形式的压缩包,解压到没有中文的路径下即可。解压后的目录。
配置环境变量:
新建一个变量,名为MAVEN_HOME,值为 maven 安装路径。
然后以 %MAVEN_HOME%\bin 添加到 path 路径下即可。
测试安装是否成功。进入 cmd 命令窗口,输入 mvn -v 命令,出现下图所示内容表示安装成功。
设置本地仓库路径:
打开 conf 配置文件夹下的 settings.xml 文件,可以看到电脑默认的本地仓库是在 $user.home/.m2/repository下。我当前的电脑默认本地仓库为 C:\Users\11388.m2\repository。
通过在该文件中可以修改本地仓库位置,使用设置<localRepository> 新的本地仓库路径 </localRepository>。这样在网上下载的所有 jar 包,都会放在新设置的本地仓库目录下,以后可以通过 maven 的 pom.xml 文件直接拿。
maven 常用命令
命令 | 解释 |
---|---|
mvn archetype:generate | 创建Maven项目 |
mvn compile | 编译源代码 |
mvn deploy | 发布项目 |
mvn test-compile | 编译测试源代码 |
mvn test | 运行应用程序中的单元测试 |
mvn site | 生成项目相关信息的网站 |
mvn clean | 清除项目目录中的生成结果 |
mvn package | 根据项目生成的jar |
mvn install | 在本地Repository中安装jar |
mvn eclipse:eclipse | 生成eclipse项目文件 |
mvnjetty:run | 启动jetty服务 |
mvntomcat:run | 启动tomcat服务 |
mvn clean package -Dmaven.test.skip=true: | 清除以前的包后重新打包,跳过测试类 |
创建 maven 的 java 项目
maven 标准目录结构
一般 maven 目录结构。
src/main/java,存放项目的 Java 源代码。
src/main/resources,存放项目相关的资源文件(配置文件)。
src/main/webapp,存放 web 项目文件。
src/test/java,存放项目的测试 Java 源代码。
src/test/resource,存放运行测试代码时所依赖的资源文件(配置文件)。
一个通用的目录布局:Maven 期望的目录布局和 Maven 创建的目录布局。
目录结构 | 存放的文件 |
---|---|
src/main/java | Application/Library sources |
src/main/resources | Application/Library resources |
src/main/filters | Resource filter files |
src/main/webapp | Web application sources |
src/test/java | Test sources |
src/test/resources | Test resources |
src/test/filters | Test resource filter files |
src/it | Integration Tests (primarily for plugins) |
src/assembly | Assembly descriptors |
src/site | Site |
LICENSE.txt | Project’s license |
NOTICE.txt | Notices and attributions required by libraries that the project depends on |
README.txt | Project’s readme |
idea 集成 maven
在 idea 中进入 settings 设置,选中 maven,选中 maven 安装路径,配置文件 settings.xml 资源路径以及本地仓库位置,点击 OK。
使用 idea 原型创建 maven java 项目
使用原型创建 java 项目需要勾选 Create from archetype,再选中如下图所示的资源。
创建后的项目目录如下:
不使用 idea 原型创建 maven java 项目
不适用原型骨架,就不需要勾选 Create from archetype,创建后的项目目录如下:
使用 idea 原型创建 maven web 项目
使用原型创建web 项目需要勾选 Create from archetype,再选中如下图所示的资源。
配置依赖jar包: