Java 通过maven将.jar文件添加到类路径
我在让maven下载我的应用程序所依赖的许多.jar文件时遇到了一些麻烦。需要这些依赖关系的代码如下:Java 通过maven将.jar文件添加到类路径,java,json,maven,intellij-idea,dependencies,Java,Json,Maven,Intellij Idea,Dependencies,我在让maven下载我的应用程序所依赖的许多.jar文件时遇到了一些麻烦。需要这些依赖关系的代码如下: import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectReader; import com.fasterxml.jackson.dat
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectReader;
import com.fasterxml.jackson.databind.ObjectWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class ServerConfiguration {
public String info = null;
public String idlURL = null;
public String idlContents = null;
public List<ServerInfo> servers = new ArrayList<>();
public final void clear() {
info = null;
idlURL = null;
idlContents = null;
if (servers != null)
servers.clear();
}
private final static ObjectReader jsonReader;
private final static ObjectWriter jsonWriter;
static {
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true); // <== Error:(52, 15) java: cannot access com.fasterxml.jackson.core.JsonGenerator class file for com.fasterxml.jackson.core.JsonGenerator not found
//mapper.configure(SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED, true);
jsonWriter = mapper.writer();
jsonReader = mapper.reader(ServerConfiguration.class);
}
public static ServerConfiguration fromJson(String json) throws IOException {
return jsonReader.<ServerConfiguration>readValue(json); // <== Error:(59, 26) java: cannot access com.fasterxml.jackson.core.JsonProcessingException class file for com.fasterxml.jackson.core.JsonProcessingException not found
}
public String toJson() throws IOException {
return jsonWriter.writeValueAsString(this);
}
}
编辑#2:
我似乎无法添加依赖项:
对于数据绑定,您需要:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>
com.fasterxml.jackson.core
您能否尝试使用2.5.4
版本,如下所示:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.5.4</version>
</dependency>
com.fasterxml.jackson.core
杰克逊数据绑定
2.5.4
com.fasterxml.jackson.core
杰克逊核心
2.5.4
com.fasterxml.jackson.core
杰克逊注释
2.5.4
在IntelliJ中,尝试勾选依赖项中的复选框
“导出”
我的意思是:项目结构->模块->依赖项,在那里你可以看到模块中包含的lib。您还应该在“导出”列的每个库附近看到一个复选框。是的,我已经编辑了源代码。我在pom.xml中已经有了这个条目。再说一次,你能发布一条错误消息或堆栈跟踪来显示问题吗?你在添加依赖项后编译了你的代码吗?是的,我已经编译了所有依赖项变体。更新了答案,你能试试吗?我试过添加依赖项,但得到了更新问题中提到的错误。你能试着从Intellij外部构建你的项目吗?
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.5.4</version>
</dependency>