java - 杰克逊没有被 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 很陌生,所以如果有人能指出我的解决方案的方向会非常有帮助,谢谢!
解决方案
推荐阅读
- c# - ConfigurationManager - 获取部分组内的部分
- sql - 如何使用 Django 进行查询?
- reactjs - 使用电子反应样板为电子应用程序构建编写自动化测试用例
- apache - 组可能存在或不存在的 RewriteRule
- vue.js - Vuex:当瞬间内的对象具有属性更改时,是否可以直接从 vue 瞬间改变状态对象?
- javascript - mongodb 从多个文档中删除特定的数组项(nodejs)
- python - 在预测一天之前初始化 LSTM 状态
- android - 即使应用程序关闭,如何在前台显示推送通知?
- winforms - Crystal Reports 13 具有基于使用 IBM DB2 的命令的动态参数
- sql - 如何在已使用 sql 预订的预订房间列表中获得空闲时间