From 9af739b03cbb35fe6d3d23c38ed833697774950a Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Tue, 22 May 2018 10:27:11 +0200 Subject: [PATCH 1/2] A first solution for the cli problem ExportFactory is not initialized at this execution point... --- src/main/java/org/jabref/cli/JabRefCLI.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/cli/JabRefCLI.java b/src/main/java/org/jabref/cli/JabRefCLI.java index ee79dee219d..b3361a69205 100644 --- a/src/main/java/org/jabref/cli/JabRefCLI.java +++ b/src/main/java/org/jabref/cli/JabRefCLI.java @@ -1,8 +1,11 @@ package org.jabref.cli; +import java.util.HashMap; import java.util.List; import org.jabref.Globals; +import org.jabref.logic.exporter.ExporterFactory; +import org.jabref.logic.exporter.TemplateExporter; import org.jabref.logic.l10n.Localization; import org.apache.commons.cli.CommandLine; @@ -259,7 +262,8 @@ public void printUsage() { String importFormats = Globals.IMPORT_FORMAT_READER.getImportFormatList(); String importFormatsList = String.format("%s:%n%s%n", Localization.lang("Available import formats"), importFormats); - String outFormats = Globals.exportFactory.getExportersAsString(70, 20, ""); + ExporterFactory exportFactory = ExporterFactory.create(new HashMap(), null, null, null); + String outFormats = exportFactory.getExportersAsString(70, 20, ""); String outFormatsList = String.format("%s: %s%n", Localization.lang("Available export formats"), outFormats); String footer = '\n' + importFormatsList + outFormatsList + "\nPlease report issues at https://github.com/JabRef/jabref/issues."; From 318ee5ec6a8bf69f5b5829b394d1b41f5f751af5 Mon Sep 17 00:00:00 2001 From: Johannes Manner Date: Tue, 22 May 2018 10:48:28 +0200 Subject: [PATCH 2/2] Changing the order of execution in the main method --- src/main/java/org/jabref/JabRefMain.java | 6 +++--- src/main/java/org/jabref/cli/JabRefCLI.java | 6 +----- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/jabref/JabRefMain.java b/src/main/java/org/jabref/JabRefMain.java index bd370dda02a..79291172919 100644 --- a/src/main/java/org/jabref/JabRefMain.java +++ b/src/main/java/org/jabref/JabRefMain.java @@ -108,9 +108,6 @@ private static void start(String[] args) { PreferencesMigrations.addCrossRefRelatedFieldsForAutoComplete(); PreferencesMigrations.upgradeObsoleteLookAndFeels(); - // Process arguments - ArgumentProcessor argumentProcessor = new ArgumentProcessor(args, ArgumentProcessor.Mode.INITIAL_START); - FallbackExceptionHandler.installExceptionHandler(); ensureCorrectJavaVersion(); @@ -141,6 +138,9 @@ private static void start(String[] args) { preferences.loadCustomEntryTypes(BibDatabaseMode.BIBLATEX)); Globals.exportFactory = Globals.prefs.getExporterFactory(Globals.journalAbbreviationLoader); + // Process arguments + ArgumentProcessor argumentProcessor = new ArgumentProcessor(args, ArgumentProcessor.Mode.INITIAL_START); + // Initialize protected terms loader Globals.protectedTermsLoader = new ProtectedTermsLoader(Globals.prefs.getProtectedTermsPreferences()); diff --git a/src/main/java/org/jabref/cli/JabRefCLI.java b/src/main/java/org/jabref/cli/JabRefCLI.java index b3361a69205..ee79dee219d 100644 --- a/src/main/java/org/jabref/cli/JabRefCLI.java +++ b/src/main/java/org/jabref/cli/JabRefCLI.java @@ -1,11 +1,8 @@ package org.jabref.cli; -import java.util.HashMap; import java.util.List; import org.jabref.Globals; -import org.jabref.logic.exporter.ExporterFactory; -import org.jabref.logic.exporter.TemplateExporter; import org.jabref.logic.l10n.Localization; import org.apache.commons.cli.CommandLine; @@ -262,8 +259,7 @@ public void printUsage() { String importFormats = Globals.IMPORT_FORMAT_READER.getImportFormatList(); String importFormatsList = String.format("%s:%n%s%n", Localization.lang("Available import formats"), importFormats); - ExporterFactory exportFactory = ExporterFactory.create(new HashMap(), null, null, null); - String outFormats = exportFactory.getExportersAsString(70, 20, ""); + String outFormats = Globals.exportFactory.getExportersAsString(70, 20, ""); String outFormatsList = String.format("%s: %s%n", Localization.lang("Available export formats"), outFormats); String footer = '\n' + importFormatsList + outFormatsList + "\nPlease report issues at https://github.com/JabRef/jabref/issues.";