Atom-extensions use new jar launcher mechanic to add tools.jar

This commit is contained in:
Kris De Volder
2018-03-02 16:50:17 -08:00
parent c1a2578a20
commit 0220cf41bd
8 changed files with 13 additions and 29 deletions

View File

@@ -130,8 +130,8 @@ export class JavaProcessLanguageClient extends AutoLanguageClient {
return this.launchVmArgs(jvm).then(args => {
args.push(`-Dserver.port=${port}`);
return this.doLaunchProcess(
jvm.getJavaExecutable(),
this.getOrInstallLauncher(),
jvm,
this.getServerJar(),
port,
args
);
@@ -143,23 +143,16 @@ export class JavaProcessLanguageClient extends AutoLanguageClient {
return Promise.resolve([]);
}
doLaunchProcess(javaExecutable, launcher, port, args=[]) {
doLaunchProcess(jvm, launcher, port, args=[]) {
let vmArgs = args.concat([
// Atom doesn't have lazy completion proposals support - completionItem/resolve message. Disable lazy completions
'-Dlsp.lazy.completions.disable=true',
'-Dlsp.completions.indentation.enable=true',
'-Dlsp.yaml.completions.errors.disable=true',
]);
if (launcher.endsWith('.jar')) {
vmArgs.push('-jar');
}
vmArgs.push(launcher);
this.logger.debug(`starting "${javaExecutable} ${vmArgs.join('\n')}"`);
return cp.spawn(javaExecutable, vmArgs, { cwd: this.serverHome })
}
getOrInstallLauncher() {
return this.getServerJar();
this.logger.debug(`starting "${jvm.getJavaExecutable()} ${vmArgs.join('\n')}\n-jar ${launcher}"`);
return jvm.jarLaunch(launcher, vmArgs, { cwd: this.serverHome });
}
installServer () {