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