Я использую GSON для декодирования JSON в объект типа T, например.
public T decode(String json) {
Gson gson = new Gson();
return gson.fromJson(json, new TypeToken<T>() {}.getType());
}
Однако это возвращает исключение -
java.lang.AssertionError: Неожиданный тип. Ожидалось одно из: java.lang.reflect.ParameterizedType, java.lang.reflect.GenericArrayType, но получено: sun.reflect.generics.reflectiveObjects.TypeVariableImpl, для токена типа: T
Я думал, что с помощью TypeToken я избегаю Type Erasure.
Я ошибся?
Спасибо