jdeploy-installer 3.0.0-alpha.3 → 3.0.0-alpha.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,3 +2,11 @@
2
2
 
3
3
  A desktop installer for GUI apps deployed using [jDeploy](https://github.com/shannah/jdeploy)
4
4
 
5
+ # Release Instructions
6
+
7
+ NPM releases are automated in Github actions. By creating a tag in Github, it will automatically make the corresponding release on NPM.
8
+
9
+ Version naming convension: X.Y.Z-alpha.N
10
+
11
+ E.g. 3.0.0-alpha.1 for pre-release. or 3.0.0 for stable release.
12
+
@@ -6,6 +6,7 @@ var classPath = "{{CLASSPATH}}";
6
6
  var port = "0";
7
7
  var warPath = "";
8
8
  var javaVersionString = "11";
9
+ var tryJavaHomeFirst = false;
9
10
 
10
11
 
11
12
  function njreWrap() {
@@ -224,9 +225,12 @@ function njreWrap() {
224
225
  }
225
226
  }
226
227
  if (!options.arch) {
227
- if (/^ppc64|s390x|x32|x64$/g.test(process.arch)) options.arch = process.arch
228
- else if (process.arch === 'ia32') options.arch = 'x32'
229
- else return Promise.reject(new Error('Unsupported architecture'))
228
+ if (options.os == 'mac') {
229
+ // For now, for compatibility reasons use x64 always
230
+ options.arch = 'x64';
231
+ } else if (/^ppc64|s390x|x32|x64$/g.test(process.arch)) options.arch = process.arch
232
+ else if (process.arch === 'ia32') options.arch = 'x32'
233
+ else return Promise.reject(new Error('Unsupported architecture'))
230
234
  }
231
235
 
232
236
  Object.keys(options).forEach(key => { url += key + '=' + options[key] + '&' })
@@ -271,8 +275,6 @@ function getJavaVersion(binPath) {
271
275
  return false;
272
276
  }
273
277
  var stdout = javaVersionProc.stderr;
274
- //console.log(javaVersionProc);
275
- //console.log("stdout is "+stdout);
276
278
  var regexp = /version "(.*?)"/;
277
279
  var match = regexp.exec(stdout);
278
280
  var parts = match[1].split('.');
@@ -286,7 +288,6 @@ function getJavaVersion(binPath) {
286
288
  }
287
289
  });
288
290
  versionStr = versionStr.replace('_', '');
289
- //console.log("Java version string "+versionStr)
290
291
  return parseFloat(versionStr);
291
292
  } catch (e) {
292
293
  return false;
@@ -310,12 +311,11 @@ function getEmbeddedJavaHome() {
310
311
  }
311
312
 
312
313
  var jreDir = path.join(os.homedir(), '.jdeploy', 'jre', javaVersionString, 'jre');
313
-
314
314
  try {
315
- return jreDir + path.sep + getDirectories(jreDir)[0] + (_driver ? (path.sep + _driver) : '');
315
+ var out = jreDir + path.sep + getDirectories(jreDir)[0] + (_driver ? (path.sep + _driver) : '');
316
+ return out;
316
317
  } catch (e) {
317
- //console.log(e);
318
- return jreDir;
318
+ return null;
319
319
  }
320
320
  }
321
321
 
@@ -339,35 +339,40 @@ function javaVersionMatch(v1, v2) {
339
339
  }
340
340
 
341
341
  var done = false;
342
- if (env['JAVA_HOME']) {
343
- var javaHomeVersion = getJavaVersion(path.join(env['JAVA_HOME'], 'bin'));
344
- if (javaVersionMatch(javaHomeVersion, targetJavaVersion)) {
345
- done = true;
346
- env['PATH'] = path.join(env['JAVA_HOME'], 'bin') + path.delimiter + env['PATH'];
347
- run(env['JAVA_HOME']);
342
+ if (tryJavaHomeFirst) {
343
+ if (env['JAVA_HOME']) {
344
+ var javaHomeVersion = getJavaVersion(path.join(env['JAVA_HOME'], 'bin'));
345
+ if (javaVersionMatch(javaHomeVersion, targetJavaVersion)) {
346
+ done = true;
347
+ env['PATH'] = path.join(env['JAVA_HOME'], 'bin') + path.delimiter + env['PATH'];
348
+ run(env['JAVA_HOME']);
348
349
 
350
+ }
349
351
  }
350
- }
351
352
 
352
- if (!done) {
353
- var javaVersion = getJavaVersion();
354
- if (javaVersionMatch(javaVersion, targetJavaVersion)) {
355
- done = true;
356
- run();
353
+ if (!done) {
354
+ var javaVersion = getJavaVersion();
355
+ if (javaVersionMatch(javaVersion, targetJavaVersion)) {
356
+ done = true;
357
+ run();
358
+ }
357
359
  }
358
360
  }
359
361
 
362
+
360
363
  if (!done) {
361
364
 
362
365
  var _javaHome = getEmbeddedJavaHome();
363
- var javaVersion = getJavaVersion(path.join(_javaHome, 'bin'));
364
- if (javaVersionMatch(javaVersion, targetJavaVersion)) {
365
-
366
- env['PATH'] = path.join(_javaHome, 'bin') + path.delimiter + env['PATH'];
367
- env['JAVA_HOME'] = _javaHome;
368
- done = true;
369
- run(_javaHome);
366
+ if (_javaHome && fs.existsSync(_javaHome)) {
367
+ var javaVersion = getJavaVersion(path.join(_javaHome, 'bin'));
368
+ if (javaVersionMatch(javaVersion, targetJavaVersion)) {
369
+ env['PATH'] = path.join(_javaHome, 'bin') + path.delimiter + env['PATH'];
370
+ env['JAVA_HOME'] = _javaHome;
371
+ done = true;
372
+ run(_javaHome);
373
+ }
370
374
  }
375
+
371
376
  }
372
377
 
373
378
  if (!done) {
@@ -428,13 +433,11 @@ function run(_javaHome) {
428
433
  env['PATH'] = env['JAVA_HOME'] + path.sep + 'bin' + path.delimiter + env['PATH'];
429
434
  }
430
435
 
436
+ } else {
437
+ env['JAVA_HOME'] = _javaHome;
438
+ cmd = _javaHome + path.sep + 'bin' + path.sep + 'java';
431
439
  }
432
440
 
433
-
434
- var javaVersion = getJavaVersion();
435
-
436
- //console.log("Java version is "+getJavaVersion());
437
-
438
441
  javaArgs.forEach(function(arg) {
439
442
  cmd += ' "'+arg+'"';
440
443
  });
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "url": "https://github.com/shannah/jdeploy.git",
12
12
  "directory": "installer"
13
13
  },
14
- "version": "3.0.0-alpha.3",
14
+ "version": "3.0.0-alpha.30",
15
15
  "jdeploy": {
16
16
  "jar": "target/jdeploy-installer-1.0-SNAPSHOT.jar",
17
17
  "bundles": [
@@ -21,7 +21,8 @@
21
21
  ],
22
22
  "macAppBundleId": "HRNMHC7527.ca.weblite.jdeploy.installer",
23
23
  "codesign": true,
24
- "notarize": false
24
+ "notarize": false,
25
+ "fork": true
25
26
  },
26
27
  "dependencies": {
27
28
  "shelljs": "^0.8.4"