MAVEN_day02快速入门
一、MAVEN工程目录结构
二、怎么在Eclipse中集成M2E插件(工欲善其事必先利其器)有一些准备工作
1.修改自己下载的MAVEN
2.设置本地仓库
三、构建MAVEN工程
1.选择“MAVEN Project”
2.勾选“create a simple project”如果不勾选的话会缺少目录结构
3.根据提示填写项目名
四、处理错误问题(按顺序处理)
1.首先会出现红色拆好问题,是因为缺少web.xml文件。在webapp中添加WEB-INF文件夹,在往文件夹添加web.xml文件。(易错)若是从其他项目直接拷贝会出现web.xml报名,原因是从其他项目拷贝会多出如下代码,只需删除重复 xmlns=http://java.sun.com/xml/ns/javaee 即可,若是手动创建不会出现问题。
2.处理jdk版本过低问题(会使用1.5)我这里是使用1.8版本 只要在pom.xml的<project>内添加如下代码即可解决。
1 <build> 2 <!-- 配置了很多插件 --> 3 <plugins> 4 <plugin> 5 <groupId>org.apache.maven.plugins</groupId> 6 <artifactId>maven-compiler-plugin</artifactId> 7 <version>3.1</version> 8 <configuration> 9 <source>1.8</source> 10 <target>1.8</target> 11 <encoding>UTF-8</encoding> 12 </configuration> 13 </plugin> 14 </plugins> 15 </build>
3.若是保存后还是显示1.5就要手动更新了,(更新很简单)
4.还是不行的话,用这种方法
5.经过这几步骤就好了。看
四、编写代码(入门)
1.创建一个servlet(和以往写代码一样了)
2.但是还会出现如下问题(这是学MAVEN必经理的问题,淡定),原因是没有对应的servlet-api.jar包等等。只需要添加如下代码
1 <dependencies> 2 <dependency> 3 <groupId>junit</groupId> 4 <artifactId>junit</artifactId> 5 <version>4.9</version> 6 <scope>test</scope> 7 </dependency> 8 <dependency> 9 <groupId>javax.servlet</groupId> 10 <artifactId>servlet-api</artifactId> 11 <version>2.5</version> 12 <scope>provided</scope> 13 </dependency> 14 <dependency> 15 <groupId>javax.servlet</groupId> 16 <artifactId>jsp-api</artifactId> 17 <version>2.0</version> 18 <scope>provided</scope> 19 </dependency> 20 21 </dependencies>
五、启动项目(TMD 终于经历这些步骤可以启动了)
1.右键点击>>"项目">>"run as" >> Maven build... 在Goals中输入“tomcat:run” >>点击run运行.
2.常见错误来了,遇到如下问题,重新安装jdk或者是你选择了和你安装版本不一致,如你安装的是jdk1.8而在pom.xml文件中写的是1.7
还有可能是这个问题
或者选择“build path” 改成1.8(你安装的版本)
六、创建本地仓库索引(缓存)
打开MAVEN视图>>"window " >>“show View” >> "other" >> "MAVEN Resposity"
七、添加所要的jar依赖(以struts-core.xxx.jar为例)
1.添加所需依赖
2.添加servlet-api、和jsp-api依赖,并且score为provided
八、依赖范围(对jar包依赖)
Compile 编译时需要,测试时需要,运行时需要,打包需要 例如:strut-core.jar各个阶段
provided 编译时需要,测试时需要,运行不需要,打包不需要 例如 servlet-api.jar
test 只需要在测试阶段,其他阶段都不需要 例如:junit.ar
runtime 编译时不需要,测试需要,运行时需要,打包需要 例如:数据驱动包
九、修改Tomcat版本、
选择“add plugin”
是不是有点多,但是你已经入门了