项目构建工具maven

一、概述

1、maven是apache的一个开源项目,是一个优秀的项目构建/管理工具

2、apache(软件基金会、非盈利组织、管理维护一些开源项目)

二、功能

1、管理项目中jar包和jar包与jar包之间的依赖

2、完成项目编译、测试、打包

三、核心文件

pom.xml:在里面配置相关信息,指导maven工作

四、两个关键词

1、坐标:

(1)jar包在仓库中的唯一地址

(2)apache将jar包全部在服务器端统一进行了管理,每个jar包都有一个唯一的地址,开发者只需要在项目中配置需要在项目中配置需要使用的jar包地址,maven就会自动从官方下载jar包

2、仓库

官方存储jar文件的仓库

中央仓库:官方提供,访问速度慢

中央仓库镜像:在全球各地对中央仓库进行备份(如阿里云),国内访问速度快

本地仓库:在程序员电脑上的仓库,第一次使用从官方下载到本地,以后可以从本地直接引用

四、maven工具的安装和配置

两个前提:已安装好jdk,良好的网络环境(使用maven时要从中央仓库/镜像仓库中下载jar包)

1、maven工具的下载地址:Maven -- Welcome to Apache Maven

2、解压安装maven到某个位置

3、配置bin目录到系统变量path

4、新建本地仓库,在conf目录下的settings.xml文件中配置本地仓库和镜像仓库地址

5、测试maven配置是否成功

6、在idea中配置maven

7、创建maven工程(第一次创建时,速度可能会很慢,因为maven需要把自己用的jar包也下载到本次仓库)

五、maven项目

1、结构

2、pom.xml文件

(1)项目基本信息

(2)配置jar包地址下jar包

3、maven中的命令

(1)compile--编译项目,生成target文件夹

(2)package--打包编译后的项目

(3)clean--删除target文件夹

4、如何将一个普通项目变为maven项目

4、使用maven打包项目

打包:将本地项目做成一个jar包(里面都是编译后的class文件)

(1)某些场景下使用maven打包项目可能会出现编译环境上的问题,因此在pom.xml文件中指定jdk版本可以避免这一类错误

配置

查看项目的编译环境java8+jdk1.8

(2)在使用java -jar jar包名在运行项目时,会出现这样的错误,需要我们在配置文件中指定好主类,以及为打包时可以将所依赖的jar包打包进去做一些配置

XML 复制代码
 <!-- 添加打包依赖   -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <descriptorRefs>

                        <!--给 jar 包起的别名-->

                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix>lib/</classpathPrefix>

                            <!--添加项目中主类-->

                            <mainClass>com.ffyc.chatrom.client.frame.Run</mainClass>
                        </manifest>
                    </archive>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

(3)运行jar包

相关推荐
Mcworld85717 分钟前
整数分解JAVA
java·开发语言
小南家的青蛙43 分钟前
LeetCode面试题 01.09 字符串轮转
java·leetcode
秋野酱1 小时前
基于javaweb的SpringBoot爱游旅行平台设计和实现(源码+文档+部署讲解)
java·spring boot·后端
饕餮争锋1 小时前
org.slf4j.MDC介绍-笔记
java·开发语言·笔记
shane-u1 小时前
Maven私服搭建与登录全攻略
java·maven
半部论语1 小时前
jdk多版本切换,通过 maven 指定编译jdk版本不生效,解决思路
java·开发语言·maven·intellij-idea
有梦想的攻城狮1 小时前
spring中的@Async注解详解
java·后端·spring·异步·async注解
Python ml1 小时前
Tomcat与纯 Java Socket 实现远程通信的区别
java·开发语言·tomcat
qq_12498707531 小时前
原生小程序+springboot+vue医院医患纠纷管理系统的设计与开发(程序+论文+讲解+安装+售后)
java·数据库·spring boot·后端·小程序·毕业设计
伊成2 小时前
一文详解Spring Boot如何配置日志
java·spring boot·单元测试