美文网首页Java
eclipse配置maven的坑

eclipse配置maven的坑

作者: GG_lyf | 来源:发表于2020-05-12 18:28 被阅读0次

    前言

    在学完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>
    

    相关文章

      网友评论

        本文标题:eclipse配置maven的坑

        本文链接:https://www.haomeiwen.com/subject/ttrinhtx.html