(二)Maven--在IDEA中的应用

目录

一、IDEA集成Maven

1.1在idea中设置maven ,让idea和maven结合使用

1.2 使用模版创建项目

二、依赖管理

2.1依赖范围, 使用scope表示的

三、Maven常用设置

3.1 maven常用操作

3.2.资源插件


一、IDEA集成Maven

1.1在idea中设置maven ,让idea和maven结合使用

idea中内置了maven ,一般不使用内置的, 因为用内置修改maven的设置不方便。

使用自己安装的maven, 需要覆盖idea中的默认的设置。让idea指定maven安装位置等信息

配置的入口

:配置当前工程的设置, file--settings ---Build, Excution,Deployment--Build Tools

--Maven

  1. Maven Home directory: maven的安装目录
  2. User Settings File : 就是maven安装目录conf/setting.xml配置文件
  3. Local Repository : 本机仓库的目录位置

--Build Tools--Maven--Runner

  1. VM Options : archetypeCatalog=internal
  2. JRE: 你项目的jdk

-DarchetypeCatalog=internal , maven项目创建时,会联网下载模版文件,

比较大, 使用-DarchetypeCatalog=internal,不用下载, 创建maven项目速度快。 (2019版本以后,新的就不用添加这个)

:配置以后新建工程的设置, file--other settings--Settings for New Project

1.2 使用模版创建项目

1)maven-archetype-quickstart : 普通的java项目

2)maven-archetype-webapp : web工程

二、依赖管理

2.1依赖范围, 使用scope表示的

scope的值有 compile, test, provided ,默认是compile

scope:表示依赖使用的范围,也就是在maven构建项目的那些阶段中起作用。

maven构建项目 编译, 测试 ,打包, 安装 ,部署 过程(阶段)

junit的依赖范围是 test

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
<dependency>
  <groupId>a</groupId>
  <artifactId>b</artifactId>   b.jar
  <version>4.11</version>
</dependency>
 <dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>          servlet.jar
  <scope>provided</scope> 提供者
</dependency>

你在写项目的中的用到的所有依赖(jar ) ,必须在本地仓库中有。

没有必须通过maven下载, 包括provided的都必须下载。

你在servlet需要继承HttpServlet( provided) , 你使用的HttpServlet是maven仓库中的。

当你的写好的程序, 放到 tomat服务器中运行时, 此时你的程序中不包含servlet的jar

因为tomcat提供了 servlet的.jar

三、Maven常用设置

3.1 maven常用操作

1.maven的属性设置

<properties> 设置maven的常用属性

2.maven的全局变量

自定义的属性,1.在<properties> 通过自定义标签声明变量(标签名就是变量名)

2.在pom.xml文件中的其它位置,使用 ${标签名} 使用变量的值

自定义全局变量一般是定义 依赖的版本号, 当你的项目中要使用多个相同的版本号,

先使用全局变量定义, 在使用${变量名}

3.2.资源插件

  <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>

作用: mybatis课程中会用到这个作用

默认没有使用resources的时候, maven执行编译代码时, 会把src/main/resource目录中的文件拷贝到target/classes目录中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员飞扬

赠人玫瑰,手有余香,感谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值