diff --git a/src/main/java/gov/usgs/earthquake/nshmp/internal/AppVersion.java b/src/main/java/gov/usgs/earthquake/nshmp/internal/AppVersion.java
index d25662ad36c4b654ed1bd265fbbf88660bf39ad9..0df51c575a51069c381ff4bc2e7c0ca7b597b8dc 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/internal/AppVersion.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/internal/AppVersion.java
@@ -1,9 +1,25 @@
 package gov.usgs.earthquake.nshmp.internal;
 
+import java.net.URL;
+
+import com.google.common.base.Charsets;
+import com.google.common.io.Resources;
+import com.google.gson.Gson;
+
 public interface AppVersion {
 
   public VersionInfo getVersionInfo();
 
+  static VersionInfo versionInfo(URL resource) {
+    try {
+      return new Gson().fromJson(
+          Resources.toString(resource, Charsets.UTF_8),
+          VersionInfo.class);
+    } catch (Exception e) {
+      throw new RuntimeException(e.getMessage());
+    }
+  }
+
   public static class VersionInfo {
     public String branchName;
     public int commitDistance;
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/internal/LibVersion.java b/src/main/java/gov/usgs/earthquake/nshmp/internal/LibVersion.java
index 6fcd6f8d70aa7b0bcb3cbd3534c8d556d15896c0..901e4d1f17be337ce73c000b40f1d06bd611b6de 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/internal/LibVersion.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/internal/LibVersion.java
@@ -1,19 +1,14 @@
 package gov.usgs.earthquake.nshmp.internal;
 
-import com.google.common.base.Charsets;
 import com.google.common.io.Resources;
-import com.google.gson.Gson;
 
+/**
+ *
+ */
 public class LibVersion implements AppVersion {
 
   public VersionInfo getVersionInfo() {
-    try {
-      var resource = Resources.getResource("version.json");
-      return new Gson().fromJson(
-          Resources.toString(resource, Charsets.UTF_8),
-          VersionInfo.class);
-    } catch (Exception e) {
-      throw new RuntimeException(e.getMessage());
-    }
+    var resource = Resources.getResource(LibVersion.class, "version.json");
+    return AppVersion.versionInfo(resource);
   }
 }