java结丹期(16)----javaweb(maven(2))

idea开发maven项目(电脑上一定要安装maven,并配置好环境变量才可开始下面的操作)

1.idea的maven配置

打开File→Settings配置maven

依据图片指示,选择本地maven安装目录,指定maven安装目录下conf文件夹中settings配置文件。

接着选择Maven目录下的Runner,VM Options里设置-DarchetypeCatalog=internal

 

2.使用骨架创建maven的web工程(第一次创建一定要联网,不然要gg)

1.

2.

3.

4.

5.

6.记得补全目录结构,完整的目录结构(maven项目的目录结构必须严格遵守(不用骨架也要严格遵守))

Maven工程的目录结构

src/main/java —— 存放项目的.java文件
src/main/resources —— 存放项目资源文件,如spring, hibernate配置文件
src/test/java —— 存放所有单元测试.java文件,如JUnit测试类
src/test/resources —— 测试资源文件
target —— 项目输出位置,编译后的class文件会输出到此目录
pom.xml——maven项目核心配置文件
注意:如果是普通的java项目,那么就没有webapp目录。

注意:补全的文件夹一定要设置成对应的文件目录,不然maven不认识。例如下面设置补全的java文件夹

1.

2.

 

3.在pom.xml文件添加坐标(以创建servlet为例)

1.创建servlet

1.创建一个Servlet,但报错

要解决问题,就是要将servlet-api-xxx.jar包放进来,作为maven工程应当添加servlet的坐标,从而导入它的jar

2.直接打开hello_maven工程的pom.xml文件,再添加坐标

 

添加jar包的坐标时,还可以指定这个jar包将来的作用范围。
每个maven工程都需要定义本工程的坐标,坐标是maven对jar包的身份定义比如:入门程序的坐标定义如下:
<!--项目名称,定义为组织名+项目名,类似包名-->
<groupId>com.itheima</groupId>
<!-- 模块名称 -->
<artifactId>hello_maven</artifactId>
<!-- 当前项目版本号,snapshot为快照版本即非正式版本,release为正式发布版本 -->

<version>0.0.1-SNAPSHOT</version>
<packaging > :打包类型
jar:执行package会打成jar包
war:执行package会打成war包
pom :用于maven工程的继承,通常父工程设置为pom

 

2.依赖范围(如果范围不对可能会导致jar包冲突,默认范围为compile

标签<scope></scope>

A依赖B,需要在A的pom.xml文件中添加B的坐标,添加坐标时需要指定依赖范围,依赖范围包括:

 compile:编译范围,指A在编译时依赖B,此范围为默认依赖范围。编译范围的依赖会用在编译、测试、运行,由于运行时需要所以编译范围的依赖会被打包。


 provided:provided依赖只有在当JDK或者一个容器已提供该依赖之后才使用, provided依赖在编译和测试时需要,在运行时不需要,比如:servlet api被tomcat容器提供。


 runtime:runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如:jdbc的驱动包。由于运行时需要所以runtime范围的依赖会被打包。


 test:test范围依赖 在编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用,比如:junit。由于运行时不需要所以test范围依赖不会被打包。


 system:system范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中JAR文件的路径,需要指定systemPath磁盘路径,system依赖不推荐使用。

3.坐标来源

从互联网搜索
http://search.maven.org/
http://mvnrepository.com/

4.如何在maven工程下运行tomcat(idea)

按图提示操作即可

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值