Index: trunk/src/org/openstreetmap/josm/gui/MainApplication.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 8168)
+++ trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 8169)
@@ -133,4 +133,5 @@
                 "\t--version                                 "+tr("Displays the JOSM version and exits")+"\n\n"+
                 "\t--debug                                   "+tr("Print debugging messages to console")+"\n\n"+
+                "\t--skip-plugins                            "+tr("Skip loading plugins")+"\n\n"+
                 "\t--offline=<osm_api|josm_website|all>      "+tr("Disable access to the given resource(s), separated by comma")+"\n\n"+
                 tr("options provided as Java system properties")+":\n"+
@@ -195,5 +196,8 @@
         SELECTION(true),
         /** --offline=&lt;osm_api|josm_website|all&gt; Disable access to the given resource(s), delimited by comma */
-        OFFLINE(true);
+        OFFLINE(true),
+        /* --skip-plugins */
+        SKIP_PLUGINS(false),
+        ;
 
         private String name;
@@ -344,4 +348,10 @@
         }
 
+        Boolean skipLoadingPlugins = false;
+        if (args.containsKey(Option.SKIP_PLUGINS)) {
+            skipLoadingPlugins = true;
+            Main.info(tr("Plugins loaded skipped"));
+        }
+
         if (args.containsKey(Option.TRACE)) {
             // Enable JOSM debug level
@@ -413,15 +423,20 @@
         });
 
-        Collection<PluginInformation> pluginsToLoad = PluginHandler.buildListOfPluginsToLoad(splash, monitor.createSubTaskMonitor(1, false));
-        if (!pluginsToLoad.isEmpty() && PluginHandler.checkAndConfirmPluginUpdate(splash)) {
-            monitor.subTask(tr("Updating plugins"));
-            pluginsToLoad = PluginHandler.updatePlugins(splash, null, monitor.createSubTaskMonitor(1, false), false);
-        }
-
-        monitor.indeterminateSubTask(tr("Installing updated plugins"));
-        PluginHandler.installDownloadedPlugins(true);
-
-        monitor.indeterminateSubTask(tr("Loading early plugins"));
-        PluginHandler.loadEarlyPlugins(splash, pluginsToLoad, monitor.createSubTaskMonitor(1, false));
+        Collection<PluginInformation> pluginsToLoad = null;
+
+
+        if (!skipLoadingPlugins) {
+            pluginsToLoad = PluginHandler.buildListOfPluginsToLoad(splash, monitor.createSubTaskMonitor(1, false));
+            if (!pluginsToLoad.isEmpty() && PluginHandler.checkAndConfirmPluginUpdate(splash)) {
+                monitor.subTask(tr("Updating plugins"));
+                pluginsToLoad = PluginHandler.updatePlugins(splash, null, monitor.createSubTaskMonitor(1, false), false);
+            }
+
+            monitor.indeterminateSubTask(tr("Installing updated plugins"));
+            PluginHandler.installDownloadedPlugins(true);
+
+            monitor.indeterminateSubTask(tr("Loading early plugins"));
+            PluginHandler.loadEarlyPlugins(splash, pluginsToLoad, monitor.createSubTaskMonitor(1, false));
+        }
 
         monitor.indeterminateSubTask(tr("Setting defaults"));
@@ -431,7 +446,9 @@
         final Main main = new MainApplication(mainFrame);
 
-        monitor.indeterminateSubTask(tr("Loading plugins"));
-        PluginHandler.loadLatePlugins(splash, pluginsToLoad,  monitor.createSubTaskMonitor(1, false));
-        toolbar.refreshToolbarControl();
+        if (!skipLoadingPlugins) {
+            monitor.indeterminateSubTask(tr("Loading plugins"));
+            PluginHandler.loadLatePlugins(splash, pluginsToLoad,  monitor.createSubTaskMonitor(1, false));
+            toolbar.refreshToolbarControl();
+        }
 
         // Wait for splash disappearance (fix #9714)
