diff --git a/scijava-ops-flim/pom.xml b/scijava-ops-flim/pom.xml index 4fb431015..09b7e233e 100644 --- a/scijava-ops-flim/pom.xml +++ b/scijava-ops-flim/pom.xml @@ -106,6 +106,8 @@ 1.0.1-SNAPSHOT 1.0.1-SNAPSHOT + 2.14.0 + true 2.1.1 diff --git a/scijava-ops-flim/src/main/java/org/scijava/ops/flim/FitParams.java b/scijava-ops-flim/src/main/java/org/scijava/ops/flim/FitParams.java index 39084f3ac..9a39e2560 100644 --- a/scijava-ops-flim/src/main/java/org/scijava/ops/flim/FitParams.java +++ b/scijava-ops-flim/src/main/java/org/scijava/ops/flim/FitParams.java @@ -31,7 +31,6 @@ import com.google.gson.*; import com.google.gson.annotations.Expose; -import com.google.gson.reflect.TypeToken; import flimlib.FitFunc; import flimlib.NoiseType; import flimlib.RestrainType; @@ -309,8 +308,12 @@ public static > FitParams fromJSON( }; var gson = new GsonBuilder().registerTypeAdapter(FitFunc.class, fitfuncDeserializer).create(); - return gson.fromJson(jsonString, new TypeToken>() {} - .getType()); + // Deserialize to the raw FitParams type: the only field using the type + // variable I ({@link #transMap}) is not serialized (no @Expose), and + // recent Gson versions reject a TypeToken that contains a type variable. + @SuppressWarnings("unchecked") + FitParams params = gson.fromJson(jsonString, FitParams.class); + return params; } @Override