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