diff --git a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java index f9d97f2b4eefefbc823688370241bf9594b73f1d..434a22b7f69e2157fac6190743acc6f0a0724816 100644 --- a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java +++ b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java @@ -32,10 +32,14 @@ import org.eclipse.ui.PlatformUI; import org.jkiss.code.Nullable; import org.jkiss.dbeaver.Log; import org.jkiss.dbeaver.core.DBeaverCore; +import org.jkiss.dbeaver.runtime.rmi.IInstanceController; +import org.jkiss.dbeaver.runtime.rmi.InstanceClient; +import org.jkiss.dbeaver.runtime.rmi.InstanceServer; import org.jkiss.utils.ArrayUtils; import java.io.File; import java.net.URL; +import java.rmi.RemoteException; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; @@ -57,15 +61,12 @@ public class DBeaverApplication implements IApplication Location instanceLoc = Platform.getInstanceLocation(); String defaultHomePath = getDefaultWorkspaceLocation().getAbsolutePath(); try { - URL defaultHomeURL = new URL( - "file", //$NON-NLS-1$ - null, - defaultHomePath); + URL defaultHomeURL = new File(defaultHomePath).toURI().toURL(); boolean keepTrying = true; Shell shell = null; while (keepTrying) { if (!instanceLoc.set(defaultHomeURL, true)) { - if (handleCommandLine(instanceLoc)) { + if (handleCommandLine(defaultHomePath)) { return IApplication.EXIT_OK; } // Can't lock specified path @@ -131,11 +132,38 @@ public class DBeaverApplication implements IApplication } } - private boolean handleCommandLine(Location instanceLoc) { + private boolean handleCommandLine(String instanceLoc) { CommandLine commandLine = getCommandLine(); if (commandLine == null) { return false; } + if (commandLine.hasOption(DBeaverCommandLine.PARAM_HELP)) { + HelpFormatter helpFormatter = new HelpFormatter(); + helpFormatter.setWidth(120); + helpFormatter.setOptionComparator(new Comparator