有谁知道如何避免以下重复文件错误?
我有一个Spark应用程序,直到昨晚一直在InteliJ社区版中工作,并且由于没有明显的原因,来自esotericsoftware的两个罐子现在导致错误被引发。当我现在执行sbt程序集时,我收到以下错误消息。
public static class CustomDeserializer implements JsonDeserializer<ServerResponse> {
@Override
public ServerResponse deserialize(JsonElement je, Type type, JsonDeserializationContext jdc)
throws JsonParseException {
Type t = ((ParameterizedType) type).getActualTypeArguments()[0];
JsonObject jObject = (JsonObject) je;
ServerResponse serverResponse = new ServerResponse();
JsonElement dataElement = jObject.get("data");
JsonElement errorElement = jObject.get("error");
JsonElement statusElement = jObject.get("status");
Error error = jdc.deserialize(errorElement, Error.class);
ResponseStatus status = jdc.deserialize(statusElement, ResponseStatus.class);
ArrayList dataObj;
if (dataElement.isJsonArray()) {
JsonArray array = dataElement.getAsJsonArray();
Type listT = ParameterizedTypeImpl.make(List.class, new Type[]{t}, null);
dataObj = jdc.deserialize(array, listT);
} else {
dataObj = new ArrayList();
dataObj.add(jdc.deserialize(dataElement, t));
}
serverResponse.setError(error);
serverResponse.setStatus(status);
serverResponse.setData(dataObj);
return serverResponse;
}
}
我正在使用sbt,并且确实有如下的mergeStrategy。
Gson gson = new GsonBuilder().registerTypeAdapter(ServerResponse.class,new CustomDeserializer()).create();
ServerResponse<String> resp = gson.fromJson(jsonString, new TypeToken<ServerResponse<String>>() {}.getType());
答案 0 :(得分:0)
今天经过大量搜索后,我在Stackoverflow中找到了答案。问题是缺少&#34;提供&#34;关于Spark-streaming依赖。这是4e6明确回答的另一个问题的网址。 error while running sbt assembly : sbt deduplication error