Maven基础入门

一、maven安装

  • 使用maven之前首先去官网下载mavenhttp://maven.apache.org/download.cgi

image-20200831153950573

下载后配置环境变量

image-20200831154155099

image-20210115135535734

命令行窗口测试一下

image-20200831154405682

如上所述则表示配置成功。

二、maven仓库

仓库类型说明
本地仓库默认位置在m2/repository,首先查找的一个仓库。
私服仓库公司内部的maven私服仓库,处于一个局域网中。
中央仓库是apache团队开发的,包含大量的jar包。

访问仓库顺序:

image-20200831160605250

优先从本地仓库获取,如果本次仓库没有就去私服获取,最后才去中央仓库获取。

中央仓库默认地址比较慢,我们可以用阿里的镜像,在conf/settings.xml中配置即可

	<mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror> 

同时配置一下本地仓库地址

D:\java_ee\localRepository\maven_repository

idea中的配置

image-20200831162013946

image-20200831162434352

加入-DarchetypeCatalog=internal防止创建骨架时卡死。

三、maven命令

命令中文含义解释
mvn clean清理可以清理已经编译好的文件(target目录下的)
mvn compile编译将Java代码编译成为.class文件
mvn test测试执行项目测试
mvn package打包将项目打包为jar/war包,放在target目录下
mvn install安装手动向本地仓库安装一个jar
mvn deploy部署将jar包上传到私服

注:在执行后面的命令前,会先执行前面的命令

在idea中,只用点一下就可以

image-20200901110344673

四、maven依赖范围

每个包都有一个依赖范围,默认是compile类型的

 <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
</dependency>

上面这个junit包只在测试时有效,即对src/test/java下的文件有效。

image-20200901104652122

  • compile:对所有时候都有效。
  • test:只在测试时有效。
  • provided:在编译和测试有效,如servlet-api,由于tomcat内置有这个包,所以在运行和打包时不需要这个包。
  • runtime:运行时有效,如JDBC驱动。
  • system:编译和测试时有效

五、maven的常用属性

1.编译版本设置

    <properties>
        <!--maven构建项目使用编码,避免中文乱码-->
        <project.build.sourceEncoding>
        UTF-8</project.build.sourceEncoding>
        <!--编译代码使用的jdk版本-->
        <maven.compiler.source>1.8</maven.compiler.source>
        <!--运行时使用的jdk版本-->
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

idea中也可以设置

image-20200901112844794

2.可以自定义属性,然后在使用时用$表示即可

    <properties>
        <junit.version>4.12</junit.version>
        <mysql-connector-java-version>5.1.37</mysql-connector-java-version>
    </properties>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>

可以统一管理版本号,方便后期维护。

3.资源插件

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes><!--包括目录下的.properties,.xml 文件都会扫描到-->
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <!--filtering 选项 false 不启用过滤器, *.property 已经起到过滤的作用了 -->
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

这个作用相当于在编译时把src/main/java下后缀xml的文件也扫描到,这样可以在java目录下放置配置文件了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值