Maven_3_项目的创建

1.配置局部的项目依赖的版本

  	<plugins>
  		<!-- 插件配置 -->
  		<plugin>
  			<groupId>org.apache.maven.plugins</groupId>
  			<artifactId>maven-compiler-plugin</artifactId>
  			<version>3.1</version>
  			<configuration>
  				<!-- 源码的版本 -->
  				<source>1.8</source>
  				<!-- 编译目标版本 -->
  				<target>1.8</target>
  				<!-- 指定字符 -->
  				<encoding>utf-8</encoding>
  			</configuration>
  		</plugin>
  	</plugins>

2.配置全局的项目依赖

  <!-- 依赖的编写 -->
  <dependencies>
  	<dependency>
  		<groupId>javax.servlet</groupId>
  		<artifactId>servlet-api</artifactId>
  		<version>2.5</version>
  		<scope>provided</scope>
  	</dependency>
  	<dependency>
  		<groupId>javax.servlet</groupId>
  		<artifactId>jsp-api</artifactId>
  		<version>2.0</version>
  		<scope>provided</scope>
  	</dependency>
  </dependencies>

3.当将项目部署到 tomcat服务器上的时候,访问呢index.jsp并不会成功。


原因是因为,在项目的lib的目录下,会有 Servlet-api.jar 和 jsp-api.jar包,但是项目目录下的lib文件夹中也有,所以会发生jar包的重复的冲突。

4.依赖的Scope属性

compile
默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。
provided
跟compile相似,但是表明了dependency 由JDK或者容器(服务器)提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在编译和测试时,同时没有传递性。
使用这个时,不会将包打入本项目中,只是依赖过来。   
使用默认或其他时,会将依赖的项目打成jar包,放入本项目的Lib里
runtime
表示dependency不作用在编译时,但会作用在运行和测试时
test
表示dependency作用在测试时,不作用在运行时。
system
跟provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它

将依赖的Scope(作用范围) 设置为 provided即可。

5.总体回顾

原理总览:

项目目录:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值