eclipse配置maven的坑
2020-05-12 本文已影响0人
GG_lyf
前言
在学完web之后感觉web乱七八糟的,各种servlet和jsp还有什么el,jstl表达式,搞个jar包,各种不适配的bug,头大啊!!!然后忍无可忍,就在网上找到maven在eclipse里面的配置,自己配了起来,但是也是各种错,由于年代久远,并且鄙人脑容量不太够,只记录了这一点.不多说了,
开搞
1 先上图(是关于maven的一些配置,如果看不清可以ctrl+鼠标滚珠下滑 放大网页)
2 下面是各种可能出现的bug
设置为1.8
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
pom.xml报错
右击项目->propertise->project facties->dynamic web module 写入src/main/webapp
jsp报错解决方法
/*
加入servlet-api的依赖
如果不加就要用buildpath->add librarise->service runtime->servlet 8.5
*/
pom.xml中配置
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
测试依赖原则:
1.路径最短者优先
pom.xml中配置
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
单元测试依赖:
pom.xml中配置
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
在jsp中写el表达式: ${pageContext.request.contextPath},jsp会报错.
因此要在pom.xml中配置引入jsp-api (可以用快捷键)
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<scope></scope> 标签中的一定是provided不然会报空指针异常(下载的包冲突)
如果不是provided那么这个异常没有办法解决
测试依赖范围对传递性的影响
需要引入spring-core依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.0.RELEASE</version>
<scope>compile</scope>
</dependency>
创建maven工程没有Maven Dependencies解决办法
<!-- 加入servlet-api的依赖 如果不加就要用buildpath->add librarise->service runtime->servlet
8.5 -->
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
配置一个镜像
阿里云镜像:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>