首页 > 解决方案 > 杰克逊没有被 gradle 导入

问题描述

我已经阅读了很多类似的问题,但我无法解决我的问题,所以我开始了:

我正在尝试将一些对象解析为 JSON 文件,显然我可以导入一些幻像库(稍后会详细介绍)但是当我尝试执行我的代码时,它在此处失败:

String jsonStr = new ObjectMapper().writeValueAsString(adv);  

除了这个例外:

Exception in thread "main" java.lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonView

我的 build.gradle:

plugins {
    id 'java'
}

group 'com.myGroup.util'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'

    compileOnly 'org.projectlombok:lombok:1.18.4'
    annotationProcessor 'org.projectlombok:lombok:1.18.4'
    
    implementation group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.0.1'
    implementation group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: '2.0.1'
    implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.0.1'
    
}

test {
    useJUnitPlatform()
}

在我的 Main.java 类中,我可以执行此导入:

import com.fasterxml.jackson.core.*;

没有问题,唯一的问题是,当我将鼠标放在顶部时,它显示没有找到 JavaDoc,可疑...我什至尝试从我的 gradle.build 文件中删除所有依赖项,它仍然会让我导入包,但它似乎是空的。

我对 Gradle 很陌生,所以如果有人能指出我的解决方案的方向会非常有帮助,谢谢!

标签: javajsongradlejackson

解决方案


推荐阅读