diff --git a/meecrowave-core/src/main/java/org/apache/meecrowave/configuration/Configuration.java b/meecrowave-core/src/main/java/org/apache/meecrowave/configuration/Configuration.java
index 669c9f0..f5bf2ef 100644
--- a/meecrowave-core/src/main/java/org/apache/meecrowave/configuration/Configuration.java
+++ b/meecrowave-core/src/main/java/org/apache/meecrowave/configuration/Configuration.java
@@ -1093,6 +1093,8 @@
                     toSet = Boolean.parseBoolean(val);
                 } else if (field.getType() == File.class) {
                     toSet = new File(val);
+                } else if (field.getType() == long.class) {
+                    toSet = Long.parseLong(val);
                 } else {
                     toSet = null;
                 }
@@ -1195,6 +1197,8 @@
                                 f.set(instance, value);
                             } else if (t == int.class) {
                                 f.set(instance, Integer.parseInt(value));
+                            } else if (t == long.class) {
+                                f.set(instance, Long.parseLong(value));
                             } else if (t == boolean.class) {
                                 f.set(instance, Boolean.parseBoolean(value));
                             } else {
diff --git a/meecrowave-core/src/main/java/org/apache/meecrowave/runner/Cli.java b/meecrowave-core/src/main/java/org/apache/meecrowave/runner/Cli.java
index 526fe5f..e5545a7 100644
--- a/meecrowave-core/src/main/java/org/apache/meecrowave/runner/Cli.java
+++ b/meecrowave-core/src/main/java/org/apache/meecrowave/runner/Cli.java
@@ -171,6 +171,9 @@
         if (int.class == type) {
             return Integer.parseInt(optionValues[0]);
         }
+        if (long.class == type) {
+            return Long.parseLong(optionValues[0]);
+        }
         if (File.class == type) {
             return new File(optionValues[0]);
         }
