maven依赖的问题

junit和jackson的依赖问题:


Junit的依赖错误:


问题:

错误: 程序包org.junit不存在

检查报错的文件,发现用到了:

import org.junit.Before;
import org.junit.Test;

于是搜索发现,before, after只支持4.X.X的版本,而原工程中的pom依赖中的版本为3.8.1。更新Junit版本到4.8.1,解决次问题。


Jackson的依赖:


问题:

错误: 程序包com.fasterxml.jackson.databind不存在

工程的目录结构为:

Projet A

|- Module 1

|- Module 2

|- Module 3

| pom.xml


报错的是Module 2。Project A的pom中已经包含了Jackson的相关依赖。


        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.2.2</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.2.2</version>
        </dependency>

Module 1中也包含了相关依赖:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <scope>provided</scope>
</dependency>

而Module2中包含了Module 1的模块,而未直接引入对Jackson的依赖,故而报错:


<dependency>
    <groupId>ProjectA</groupId>
    <artifactId>Module1</artifactId>
</dependency>


解决方法:

在Module1的pom.xml中加入对Jackson的依赖,问题得到解决。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章