diff --git a/src/main/java/fr/soleil/bensikin/Bensikin.java b/src/main/java/fr/soleil/bensikin/Bensikin.java
index 301b15c40aac98dc9c95a1461005c882edd8bb2f..9d2d7ec5f238c35f44f9bd8e28fe580ced0a6e3f 100644
--- a/src/main/java/fr/soleil/bensikin/Bensikin.java
+++ b/src/main/java/fr/soleil/bensikin/Bensikin.java
@@ -50,6 +50,7 @@ package fr.soleil.bensikin;
 
 import java.awt.Dimension;
 import java.awt.Frame;
+import java.awt.GraphicsEnvironment;
 import java.awt.Toolkit;
 import java.io.File;
 import java.util.Locale;
@@ -175,7 +176,9 @@ public class Bensikin {
 
     public static void treatError(Exception e, String message, Splash splash) {
         String msg = "Bensikin encountered an undesired error and will close:\n" + e.getMessage();
-        JOptionPane.showMessageDialog(splash, msg, "Bensikin Error!", JOptionPane.ERROR_MESSAGE);
+        if (!GraphicsEnvironment.isHeadless()) {
+            JOptionPane.showMessageDialog(splash, msg, "Bensikin Error!", JOptionPane.ERROR_MESSAGE);
+        }
         if (message == null) {
             message = msg;
         }