@dimzxzzx07/mc-headless 1.9.0 → 2.1.0
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 +7 -7
- package/dist/core/JavaChecker.d.ts +8 -7
- package/dist/core/JavaChecker.d.ts.map +1 -1
- package/dist/core/JavaChecker.js +163 -65
- package/dist/core/JavaChecker.js.map +1 -1
- package/dist/core/MinecraftServer.d.ts +1 -5
- package/dist/core/MinecraftServer.d.ts.map +1 -1
- package/dist/core/MinecraftServer.js +29 -152
- package/dist/core/MinecraftServer.js.map +1 -1
- package/package.json +1 -1
- package/src/core/JavaChecker.ts +184 -75
- package/src/core/MinecraftServer.ts +36 -157
package/README.md
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
</div>
|
|
6
6
|
|
|
7
7
|
<div align="center">
|
|
8
|
-
<img src="https://img.shields.io/badge/Version-1.
|
|
8
|
+
<img src="https://img.shields.io/badge/Version-2.1.0-2563eb?style=for-the-badge&logo=typescript" alt="Version">
|
|
9
9
|
<img src="https://img.shields.io/badge/License-MIT-green?style=for-the-badge&logo=open-source-initiative" alt="License">
|
|
10
10
|
<img src="https://img.shields.io/badge/Node-18%2B-339933?style=for-the-badge&logo=nodedotjs" alt="Node">
|
|
11
11
|
<img src="https://img.shields.io/badge/Java-Portable-007396?style=for-the-badge&logo=openjdk" alt="Java Portable">
|
|
12
12
|
<img src="https://img.shields.io/badge/Termux-Friendly-00A98F?style=for-the-badge&logo=termux" alt="Termux">
|
|
13
|
-
<img src="https://img.shields.io/badge/Stable-1.
|
|
13
|
+
<img src="https://img.shields.io/badge/Stable-2.1.0-brightgreen?style=for-the-badge" alt="Stable">
|
|
14
14
|
</div>
|
|
15
15
|
|
|
16
16
|
<div align="center">
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
## Table of Contents
|
|
34
34
|
|
|
35
35
|
- [Overview](#overview)
|
|
36
|
-
- [What's New in 1.
|
|
36
|
+
- [What's New in 2.1.0](#whats-new-in-210)
|
|
37
37
|
- [Features](#features)
|
|
38
38
|
- [Why MC-Headless?](#why-mc-headless)
|
|
39
39
|
- [Installation](#installation)
|
|
@@ -70,9 +70,9 @@ Built specifically for developers, sysadmins, and Minecraft enthusiasts who want
|
|
|
70
70
|
|
|
71
71
|
---
|
|
72
72
|
|
|
73
|
-
## What's New in 1.
|
|
73
|
+
## What's New in 2.1.0
|
|
74
74
|
|
|
75
|
-
### Version 1.
|
|
75
|
+
### Version 2.1.0 - March 2026
|
|
76
76
|
|
|
77
77
|
- **Portable Java** - Auto-download JRE to `/tmp` (no system installation required)
|
|
78
78
|
- **Smart Java Detection** - Uses `which java` to check existing installation
|
|
@@ -140,7 +140,7 @@ wget https://github.com/SkinsRestorer/SkinsRestorerX/releases/latest/download/Sk
|
|
|
140
140
|
tail -f logs/latest.log
|
|
141
141
|
```
|
|
142
142
|
|
|
143
|
-
After (MC-Headless
|
|
143
|
+
After (MC-Headless v2.1.0)
|
|
144
144
|
|
|
145
145
|
```javascript
|
|
146
146
|
const server = new MinecraftServer({
|
|
@@ -298,7 +298,7 @@ async function startServer() {
|
|
|
298
298
|
server.on("ready", (info) => {
|
|
299
299
|
console.clear();
|
|
300
300
|
console.log(`\n==========================================`);
|
|
301
|
-
console.log(`Minecraft Server -
|
|
301
|
+
console.log(`Minecraft Server - v2.1.0`);
|
|
302
302
|
console.log(` IP: ${publicIp}:${info.port}`);
|
|
303
303
|
console.log(` Version: ${info.version}`);
|
|
304
304
|
console.log(` Memory: ${info.memory.used}/${info.memory.max} MB`);
|
|
@@ -6,16 +6,17 @@ export interface JavaInfo {
|
|
|
6
6
|
export declare class JavaChecker {
|
|
7
7
|
private static logger;
|
|
8
8
|
private static readonly JAVA_DIR;
|
|
9
|
-
private static readonly
|
|
10
|
-
|
|
11
|
-
private static readonly JAVA_11_URL;
|
|
12
|
-
private static readonly JAVA_8_URL;
|
|
9
|
+
private static readonly JAVA_URLS;
|
|
10
|
+
static getRequiredJavaVersion(serverVersion: string): '17' | '21';
|
|
13
11
|
static checkJava(): Promise<boolean>;
|
|
14
12
|
static getSystemJavaPath(): string | null;
|
|
15
13
|
static getSystemJavaVersion(): string | null;
|
|
16
|
-
static
|
|
17
|
-
private static
|
|
18
|
-
static
|
|
14
|
+
private static downloadWithCurl;
|
|
15
|
+
private static downloadWithWget;
|
|
16
|
+
private static downloadWithNode;
|
|
17
|
+
private static downloadWithFallback;
|
|
18
|
+
static getOrDownloadPortableJava(version: '17' | '21'): Promise<JavaInfo>;
|
|
19
|
+
static ensureJava(serverVersion: string, usePortable?: boolean): Promise<JavaInfo>;
|
|
19
20
|
static cleanupOldJava(): void;
|
|
20
21
|
}
|
|
21
22
|
//# sourceMappingURL=JavaChecker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JavaChecker.d.ts","sourceRoot":"","sources":["../../src/core/JavaChecker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"JavaChecker.d.ts","sourceRoot":"","sources":["../../src/core/JavaChecker.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;CAC/B;AAED,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAwB;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA0C;IAE1E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAS/B;WAEY,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;WAUpD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;WAenC,iBAAiB,IAAI,MAAM,GAAG,IAAI;WASlC,oBAAoB,IAAI,MAAM,GAAG,IAAI;mBAc9B,gBAAgB;mBA0BhB,gBAAgB;mBA0BhB,gBAAgB;mBAsDhB,oBAAoB;WAoBrB,yBAAyB,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;WAqElE,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,GAAE,OAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;WAyBvF,cAAc,IAAI,IAAI;CAkBvC"}
|
package/dist/core/JavaChecker.js
CHANGED
|
@@ -38,15 +38,31 @@ const child_process_1 = require("child_process");
|
|
|
38
38
|
const fs = __importStar(require("fs-extra"));
|
|
39
39
|
const path = __importStar(require("path"));
|
|
40
40
|
const https = __importStar(require("https"));
|
|
41
|
+
const http = __importStar(require("http"));
|
|
41
42
|
const tar = __importStar(require("tar"));
|
|
42
43
|
const Logger_1 = require("../utils/Logger");
|
|
43
44
|
class JavaChecker {
|
|
44
45
|
static logger = Logger_1.Logger.getInstance();
|
|
45
46
|
static JAVA_DIR = path.join('/tmp', '.mc-headless-java');
|
|
46
|
-
static
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
static JAVA_URLS = {
|
|
48
|
+
'21': [
|
|
49
|
+
'https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz',
|
|
50
|
+
'https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.2%2B13/OpenJDK21U-jdk_x64_linux_hotspot_21.0.2_13.tar.gz'
|
|
51
|
+
],
|
|
52
|
+
'17': [
|
|
53
|
+
'https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz',
|
|
54
|
+
'https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.10%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.10_7.tar.gz'
|
|
55
|
+
]
|
|
56
|
+
};
|
|
57
|
+
static getRequiredJavaVersion(serverVersion) {
|
|
58
|
+
if (serverVersion.startsWith('1.21') || serverVersion === '1.21.11') {
|
|
59
|
+
return '21';
|
|
60
|
+
}
|
|
61
|
+
if (serverVersion.startsWith('1.20') || serverVersion.startsWith('1.19') || serverVersion.startsWith('1.18')) {
|
|
62
|
+
return '17';
|
|
63
|
+
}
|
|
64
|
+
return '21';
|
|
65
|
+
}
|
|
50
66
|
static async checkJava() {
|
|
51
67
|
return new Promise((resolve) => {
|
|
52
68
|
(0, child_process_1.exec)('which java', (error, stdout) => {
|
|
@@ -89,74 +105,76 @@ class JavaChecker {
|
|
|
89
105
|
return null;
|
|
90
106
|
}
|
|
91
107
|
}
|
|
92
|
-
static async
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
108
|
+
static async downloadWithCurl(url, destPath) {
|
|
109
|
+
return new Promise((resolve, reject) => {
|
|
110
|
+
this.logger.info(`Downloading with curl: ${url}`);
|
|
111
|
+
const curl = (0, child_process_1.exec)(`curl -L -o "${destPath}" "${url}"`, (error) => {
|
|
112
|
+
if (error) {
|
|
113
|
+
reject(error);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
resolve();
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
if (curl.stdout) {
|
|
120
|
+
curl.stdout.on('data', (data) => {
|
|
121
|
+
process.stdout.write(data);
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
if (curl.stderr) {
|
|
125
|
+
curl.stderr.on('data', (data) => {
|
|
126
|
+
process.stderr.write(data);
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
static async downloadWithWget(url, destPath) {
|
|
132
|
+
return new Promise((resolve, reject) => {
|
|
133
|
+
this.logger.info(`Downloading with wget: ${url}`);
|
|
134
|
+
const wget = (0, child_process_1.exec)(`wget -O "${destPath}" "${url}"`, (error) => {
|
|
135
|
+
if (error) {
|
|
136
|
+
reject(error);
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
resolve();
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
if (wget.stdout) {
|
|
143
|
+
wget.stdout.on('data', (data) => {
|
|
144
|
+
process.stdout.write(data);
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
if (wget.stderr) {
|
|
148
|
+
wget.stderr.on('data', (data) => {
|
|
149
|
+
process.stderr.write(data);
|
|
150
|
+
});
|
|
151
|
+
}
|
|
132
152
|
});
|
|
133
|
-
await fs.remove(tarPath);
|
|
134
|
-
await fs.chmod(javaBin, 0o755);
|
|
135
|
-
this.logger.success(`Portable Java ${version} installed at ${javaBin}`);
|
|
136
|
-
const versionOutput = (0, child_process_1.execSync)(`"${javaBin}" -version 2>&1`).toString();
|
|
137
|
-
this.logger.debug(`Portable Java version: ${versionOutput.split('\n')[0]}`);
|
|
138
|
-
return {
|
|
139
|
-
path: javaBin,
|
|
140
|
-
version: version,
|
|
141
|
-
type: 'portable'
|
|
142
|
-
};
|
|
143
153
|
}
|
|
144
|
-
static
|
|
154
|
+
static async downloadWithNode(url, destPath) {
|
|
145
155
|
return new Promise((resolve, reject) => {
|
|
146
|
-
|
|
147
|
-
const
|
|
148
|
-
|
|
156
|
+
const protocol = url.startsWith('https') ? https : http;
|
|
157
|
+
const request = protocol.get(url, (response) => {
|
|
158
|
+
if (response.statusCode === 301 || response.statusCode === 302 || response.statusCode === 307 || response.statusCode === 308) {
|
|
159
|
+
const location = response.headers.location;
|
|
160
|
+
if (location) {
|
|
161
|
+
this.logger.info(`Redirecting to ${location}`);
|
|
162
|
+
this.downloadWithNode(location, destPath).then(resolve).catch(reject);
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
149
166
|
if (response.statusCode !== 200) {
|
|
150
167
|
reject(new Error(`Download failed: ${response.statusCode}`));
|
|
151
168
|
return;
|
|
152
169
|
}
|
|
170
|
+
const file = fs.createWriteStream(destPath);
|
|
153
171
|
const totalSize = parseInt(response.headers['content-length'] || '0');
|
|
154
172
|
let downloadedSize = 0;
|
|
155
173
|
response.on('data', (chunk) => {
|
|
156
174
|
downloadedSize += chunk.length;
|
|
157
175
|
if (totalSize > 0) {
|
|
158
176
|
const percent = ((downloadedSize / totalSize) * 100).toFixed(1);
|
|
159
|
-
process.stdout.write(`\rDownloading Java: ${percent}% (${(downloadedSize / 1024 / 1024).toFixed(1)} MB
|
|
177
|
+
process.stdout.write(`\rDownloading Java: ${percent}% (${(downloadedSize / 1024 / 1024).toFixed(1)} MB)`);
|
|
160
178
|
}
|
|
161
179
|
});
|
|
162
180
|
response.pipe(file);
|
|
@@ -169,29 +187,109 @@ class JavaChecker {
|
|
|
169
187
|
fs.unlink(destPath).catch(() => { });
|
|
170
188
|
reject(err);
|
|
171
189
|
});
|
|
172
|
-
})
|
|
190
|
+
});
|
|
191
|
+
request.on('error', (err) => {
|
|
173
192
|
fs.unlink(destPath).catch(() => { });
|
|
174
193
|
reject(err);
|
|
175
194
|
});
|
|
195
|
+
request.end();
|
|
176
196
|
});
|
|
177
197
|
}
|
|
178
|
-
static async
|
|
179
|
-
const
|
|
198
|
+
static async downloadWithFallback(url, destPath) {
|
|
199
|
+
const downloaders = [
|
|
200
|
+
this.downloadWithCurl.bind(this),
|
|
201
|
+
this.downloadWithWget.bind(this),
|
|
202
|
+
this.downloadWithNode.bind(this)
|
|
203
|
+
];
|
|
204
|
+
for (const downloader of downloaders) {
|
|
205
|
+
try {
|
|
206
|
+
await downloader(url, destPath);
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
211
|
+
this.logger.warning(`Download method failed: ${errorMessage}`);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
throw new Error('All download methods failed');
|
|
215
|
+
}
|
|
216
|
+
static async getOrDownloadPortableJava(version) {
|
|
217
|
+
await fs.ensureDir(this.JAVA_DIR);
|
|
218
|
+
const javaHome = path.join(this.JAVA_DIR, `jre-${version}`);
|
|
219
|
+
const javaBin = path.join(javaHome, 'bin', 'java');
|
|
220
|
+
if (await fs.pathExists(javaBin)) {
|
|
221
|
+
this.logger.info(`Portable Java ${version} already exists at ${javaBin}`);
|
|
222
|
+
try {
|
|
223
|
+
const versionOutput = (0, child_process_1.execSync)(`"${javaBin}" -version 2>&1`).toString();
|
|
224
|
+
this.logger.debug(`Portable Java version: ${versionOutput.split('\n')[0]}`);
|
|
225
|
+
return {
|
|
226
|
+
path: javaBin,
|
|
227
|
+
version: version,
|
|
228
|
+
type: 'portable'
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
this.logger.warning(`Existing Java seems corrupted, re-downloading...`);
|
|
233
|
+
await fs.remove(javaHome);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
const urls = this.JAVA_URLS[version] || this.JAVA_URLS['21'];
|
|
237
|
+
let lastError = null;
|
|
238
|
+
for (let i = 0; i < urls.length; i++) {
|
|
239
|
+
const url = urls[i];
|
|
240
|
+
const tarPath = path.join(this.JAVA_DIR, `jre-${version}-${i}.tar.gz`);
|
|
241
|
+
try {
|
|
242
|
+
this.logger.info(`Downloading portable Java ${version} (attempt ${i + 1}/${urls.length})...`);
|
|
243
|
+
this.logger.info(`URL: ${url}`);
|
|
244
|
+
await this.downloadWithFallback(url, tarPath);
|
|
245
|
+
this.logger.info(`Extracting Java ${version}...`);
|
|
246
|
+
await fs.ensureDir(javaHome);
|
|
247
|
+
await tar.extract({
|
|
248
|
+
file: tarPath,
|
|
249
|
+
cwd: javaHome,
|
|
250
|
+
strip: 1
|
|
251
|
+
});
|
|
252
|
+
await fs.remove(tarPath);
|
|
253
|
+
await fs.chmod(javaBin, 0o755);
|
|
254
|
+
this.logger.success(`Portable Java ${version} installed at ${javaBin}`);
|
|
255
|
+
const versionOutput = (0, child_process_1.execSync)(`"${javaBin}" -version 2>&1`).toString();
|
|
256
|
+
this.logger.debug(`Portable Java version: ${versionOutput.split('\n')[0]}`);
|
|
257
|
+
return {
|
|
258
|
+
path: javaBin,
|
|
259
|
+
version: version,
|
|
260
|
+
type: 'portable'
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
catch (error) {
|
|
264
|
+
lastError = error instanceof Error ? error : new Error(String(error));
|
|
265
|
+
this.logger.warning(`Attempt ${i + 1} failed: ${lastError.message}`);
|
|
266
|
+
await fs.remove(tarPath).catch(() => { });
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
throw new Error(`Failed to download Java ${version} after ${urls.length} attempts. Last error: ${lastError?.message}`);
|
|
270
|
+
}
|
|
271
|
+
static async ensureJava(serverVersion, usePortable = true) {
|
|
272
|
+
const requiredVersion = this.getRequiredJavaVersion(serverVersion);
|
|
273
|
+
this.logger.info(`Server requires Java ${requiredVersion}`);
|
|
180
274
|
if (!usePortable) {
|
|
181
275
|
const systemJava = this.getSystemJavaPath();
|
|
182
276
|
if (systemJava) {
|
|
183
277
|
const systemVersion = this.getSystemJavaVersion();
|
|
184
|
-
if (systemVersion ===
|
|
278
|
+
if (systemVersion === requiredVersion) {
|
|
185
279
|
this.logger.success(`Using system Java ${systemVersion} at ${systemJava}`);
|
|
186
280
|
return {
|
|
187
281
|
path: systemJava,
|
|
188
|
-
version: systemVersion
|
|
282
|
+
version: systemVersion,
|
|
189
283
|
type: 'system'
|
|
190
284
|
};
|
|
191
285
|
}
|
|
286
|
+
else {
|
|
287
|
+
this.logger.warning(`System Java is ${systemVersion}, but server needs Java ${requiredVersion}`);
|
|
288
|
+
}
|
|
192
289
|
}
|
|
193
290
|
}
|
|
194
|
-
|
|
291
|
+
this.logger.info(`Downloading portable Java ${requiredVersion}...`);
|
|
292
|
+
return this.getOrDownloadPortableJava(requiredVersion);
|
|
195
293
|
}
|
|
196
294
|
static cleanupOldJava() {
|
|
197
295
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JavaChecker.js","sourceRoot":"","sources":["../../src/core/JavaChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA+C;AAC/C,6CAA+B;AAC/B,2CAA6B;AAC7B,6CAA+B;AAC/B,yCAA2B;AAC3B,4CAAyC;AAQzC,MAAa,WAAW;IACZ,MAAM,CAAC,MAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,CAAU,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAClE,MAAM,CAAU,WAAW,GAAG,oIAAoI,CAAC;IACnK,MAAM,CAAU,WAAW,GAAG,oIAAoI,CAAC;IACnK,MAAM,CAAU,WAAW,GAAG,oIAAoI,CAAC;IACnK,MAAM,CAAU,UAAU,GAAG,8HAA8H,CAAC;IAE7J,MAAM,CAAC,KAAK,CAAC,SAAS;QACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,IAAA,oBAAI,EAAC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACjC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;oBACvD,OAAO,CAAC,KAAK,CAAC,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;oBACzD,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,iBAAiB;QAC3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YACxD,OAAO,MAAM,IAAI,IAAI,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,oBAAoB;QAC9B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzD,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,OAAO,GAAG,CAAC;YAChD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAChD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,UAAoC,IAAI;QAClF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAEnD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,OAAO,sBAAsB,OAAO,EAAE,CAAC,CAAC;YAE1E,MAAM,aAAa,GAAG,IAAA,wBAAQ,EAAC,IAAI,OAAO,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC;YACxE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAE5E,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,UAAU;aACnB,CAAC;QACN,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,OAAO,SAAS,CAAC,CAAC;QAEhE,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,QAAQ,OAAO,EAAE,CAAC;YACd,KAAK,IAAI;gBACL,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC/B,MAAM;YACV,KAAK,IAAI;gBACL,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC/B,MAAM;YACV,KAAK,IAAI;gBACL,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC/B,MAAM;YACV,KAAK,GAAG;gBACJ,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC9B,MAAM;YACV;gBACI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,OAAO,SAAS,CAAC,CAAC;QAElE,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAE9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,OAAO,KAAK,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC7B,MAAM,GAAG,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,QAAQ;YACb,KAAK,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzB,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,OAAO,iBAAiB,OAAO,EAAE,CAAC,CAAC;QAExE,MAAM,aAAa,GAAG,IAAA,wBAAQ,EAAC,IAAI,OAAO,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAE5E,OAAO;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,UAAU;SACnB,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,YAAY,CAAC,GAAW,EAAE,QAAgB;QACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;YAE5C,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC5C,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACxB,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC7D,OAAO;gBACX,CAAC;gBAED,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,CAAC;gBACtE,IAAI,cAAc,GAAG,CAAC,CAAC;gBAEvB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC1B,cAAc,IAAI,KAAK,CAAC,MAAM,CAAC;oBAC/B,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;wBAChB,MAAM,OAAO,GAAG,CAAC,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,OAAO,MAAM,CAAC,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBAC3J,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEpB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACb,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACrB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACpC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAgC,MAAM,EAAE,cAAuB,IAAI;QAC9F,MAAM,aAAa,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QAE1D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5C,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAClD,IAAI,aAAa,KAAK,aAAa,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI,CAAC,EAAE,CAAC;oBACxF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,aAAa,OAAO,UAAU,EAAE,CAAC,CAAC;oBAC3E,OAAO;wBACH,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,aAAa,IAAI,aAAa;wBACvC,IAAI,EAAE,QAAQ;qBACjB,CAAC;gBACN,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,yBAAyB,CAAC,aAAoB,CAAC,CAAC;IAChE,CAAC;IAEM,MAAM,CAAC,cAAc;QACxB,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YAEnC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACpC,IAAI,GAAG,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC;oBAC/B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;gBACtD,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;;AAhML,kCAiMC"}
|
|
1
|
+
{"version":3,"file":"JavaChecker.js","sourceRoot":"","sources":["../../src/core/JavaChecker.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,11 +59,6 @@ export declare class MinecraftServer extends EventEmitter {
|
|
|
59
59
|
constructor(userConfig?: MinecraftServerOptions);
|
|
60
60
|
private detectCgroupLimits;
|
|
61
61
|
private createEngine;
|
|
62
|
-
private detectJavaVersion;
|
|
63
|
-
private ensureJava;
|
|
64
|
-
private installJavaLinux;
|
|
65
|
-
private installJavaMac;
|
|
66
|
-
private calculateWorldSize;
|
|
67
62
|
private buildJavaArgs;
|
|
68
63
|
private buildEnvironment;
|
|
69
64
|
private processOwnerCommand;
|
|
@@ -93,5 +88,6 @@ export declare class MinecraftServer extends EventEmitter {
|
|
|
93
88
|
private handlePlayerJoin;
|
|
94
89
|
private handlePlayerLeave;
|
|
95
90
|
private parseMemory;
|
|
91
|
+
private calculateWorldSize;
|
|
96
92
|
}
|
|
97
93
|
//# sourceMappingURL=MinecraftServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MinecraftServer.d.ts","sourceRoot":"","sources":["../../src/core/MinecraftServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAiB/D,MAAM,WAAW,sBAAuB,SAAQ,OAAO,CAAC,eAAe,CAAC;IACpE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;KACvC,CAAC;IACF,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,UAAU,EAAE,OAAO,CAAC;QACpB,aAAa,EAAE,OAAO,CAAC;KAC1B,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,eAAgB,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,kBAAkB,CAAe;IACzC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,SAAS,CAAa;gBAElB,UAAU,GAAE,sBAA2B;IAiEnD,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"MinecraftServer.d.ts","sourceRoot":"","sources":["../../src/core/MinecraftServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -171,157 +171,6 @@ class MinecraftServer extends events_1.EventEmitter {
|
|
|
171
171
|
throw new Error(`Unsupported server type: ${this.config.type}`);
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
|
-
async detectJavaVersion() {
|
|
175
|
-
try {
|
|
176
|
-
const output = (0, child_process_1.execSync)('java -version 2>&1').toString();
|
|
177
|
-
if (output.includes('version "21')) {
|
|
178
|
-
return '21';
|
|
179
|
-
}
|
|
180
|
-
else if (output.includes('version "17')) {
|
|
181
|
-
return '17';
|
|
182
|
-
}
|
|
183
|
-
else if (output.includes('version "11')) {
|
|
184
|
-
return '11';
|
|
185
|
-
}
|
|
186
|
-
else if (output.includes('version "8')) {
|
|
187
|
-
return '8';
|
|
188
|
-
}
|
|
189
|
-
return 'unknown';
|
|
190
|
-
}
|
|
191
|
-
catch {
|
|
192
|
-
return 'none';
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
async ensureJava() {
|
|
196
|
-
if (!this.options.autoInstallJava) {
|
|
197
|
-
await JavaChecker_1.JavaChecker.ensureJava();
|
|
198
|
-
return;
|
|
199
|
-
}
|
|
200
|
-
const targetVersion = this.options.javaVersion === 'auto' ? '17' : this.options.javaVersion || '17';
|
|
201
|
-
if (this.options.usePortableJava) {
|
|
202
|
-
this.javaInfo = await JavaChecker_1.JavaChecker.getOrDownloadPortableJava(targetVersion);
|
|
203
|
-
this.javaCommand = this.javaInfo.path;
|
|
204
|
-
this.logger.success(`Using portable Java ${this.javaInfo.version} from ${this.javaInfo.path}`);
|
|
205
|
-
}
|
|
206
|
-
else {
|
|
207
|
-
const hasJava = await JavaChecker_1.JavaChecker.checkJava();
|
|
208
|
-
if (!hasJava) {
|
|
209
|
-
this.logger.info('Java not found, attempting to install system Java...');
|
|
210
|
-
const osType = SystemDetector_1.SystemDetector.getOS();
|
|
211
|
-
const distro = SystemDetector_1.SystemDetector.getDistro();
|
|
212
|
-
if (osType === 'linux' || osType === 'android') {
|
|
213
|
-
await this.installJavaLinux(distro, targetVersion);
|
|
214
|
-
}
|
|
215
|
-
else if (osType === 'darwin') {
|
|
216
|
-
await this.installJavaMac(targetVersion);
|
|
217
|
-
}
|
|
218
|
-
else if (osType === 'windows') {
|
|
219
|
-
this.logger.error('Windows detected. Please install Java manually from https://adoptium.net');
|
|
220
|
-
throw new Error('Java not installed');
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
else {
|
|
224
|
-
const detectedVersion = await this.detectJavaVersion();
|
|
225
|
-
this.logger.info(`Detected system Java version: ${detectedVersion}`);
|
|
226
|
-
if (detectedVersion === '21' || detectedVersion === '17') {
|
|
227
|
-
this.javaCommand = 'java';
|
|
228
|
-
this.logger.success(`Using system Java ${detectedVersion}`);
|
|
229
|
-
}
|
|
230
|
-
else {
|
|
231
|
-
this.logger.warning(`System Java ${detectedVersion} is not optimal. Switching to portable Java...`);
|
|
232
|
-
this.javaInfo = await JavaChecker_1.JavaChecker.getOrDownloadPortableJava(targetVersion);
|
|
233
|
-
this.javaCommand = this.javaInfo.path;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
const finalVersion = this.javaInfo ? this.javaInfo.version : await this.detectJavaVersion();
|
|
238
|
-
this.logger.success(`Java version: ${finalVersion}`);
|
|
239
|
-
}
|
|
240
|
-
async installJavaLinux(distro, version) {
|
|
241
|
-
return new Promise((resolve, reject) => {
|
|
242
|
-
let command = '';
|
|
243
|
-
const javaPackage = version === '21' ? 'openjdk-21-jre-headless' : 'openjdk-17-jre-headless';
|
|
244
|
-
if (distro === 'ubuntu' || distro === 'debian') {
|
|
245
|
-
command = `apt update && apt install -y ${javaPackage}`;
|
|
246
|
-
}
|
|
247
|
-
else if (distro === 'centos' || distro === 'fedora') {
|
|
248
|
-
command = `yum install -y java-${version}-openjdk-headless`;
|
|
249
|
-
}
|
|
250
|
-
else if (distro === 'arch') {
|
|
251
|
-
const archPackage = version === '21' ? 'jre21-openjdk-headless' : 'jre17-openjdk-headless';
|
|
252
|
-
command = `pacman -S --noconfirm ${archPackage}`;
|
|
253
|
-
}
|
|
254
|
-
else if (distro === 'termux') {
|
|
255
|
-
command = 'pkg install -y openjdk-17';
|
|
256
|
-
}
|
|
257
|
-
else {
|
|
258
|
-
this.logger.error('Unsupported Linux distribution. Please install Java manually.');
|
|
259
|
-
reject(new Error('Unsupported distribution'));
|
|
260
|
-
return;
|
|
261
|
-
}
|
|
262
|
-
this.logger.info(`Installing Java ${version} with: ${command}`);
|
|
263
|
-
const install = (0, child_process_1.exec)(command, (error) => {
|
|
264
|
-
if (error) {
|
|
265
|
-
reject(error);
|
|
266
|
-
}
|
|
267
|
-
else {
|
|
268
|
-
resolve();
|
|
269
|
-
}
|
|
270
|
-
});
|
|
271
|
-
if (install.stdout) {
|
|
272
|
-
install.stdout.pipe(process.stdout);
|
|
273
|
-
}
|
|
274
|
-
if (install.stderr) {
|
|
275
|
-
install.stderr.pipe(process.stderr);
|
|
276
|
-
}
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
async installJavaMac(version) {
|
|
280
|
-
return new Promise((resolve, reject) => {
|
|
281
|
-
const command = `brew install openjdk@${version}`;
|
|
282
|
-
this.logger.info(`Installing Java ${version} with: ${command}`);
|
|
283
|
-
const install = (0, child_process_1.exec)(command, (error) => {
|
|
284
|
-
if (error) {
|
|
285
|
-
reject(error);
|
|
286
|
-
}
|
|
287
|
-
else {
|
|
288
|
-
resolve();
|
|
289
|
-
}
|
|
290
|
-
});
|
|
291
|
-
if (install.stdout) {
|
|
292
|
-
install.stdout.pipe(process.stdout);
|
|
293
|
-
}
|
|
294
|
-
if (install.stderr) {
|
|
295
|
-
install.stderr.pipe(process.stderr);
|
|
296
|
-
}
|
|
297
|
-
});
|
|
298
|
-
}
|
|
299
|
-
async calculateWorldSize() {
|
|
300
|
-
try {
|
|
301
|
-
const worldPath = path.join(process.cwd(), this.config.folders.world);
|
|
302
|
-
if (!await fs.pathExists(worldPath))
|
|
303
|
-
return 0;
|
|
304
|
-
const getSize = async (dir) => {
|
|
305
|
-
let total = 0;
|
|
306
|
-
const files = await fs.readdir(dir);
|
|
307
|
-
for (const file of files) {
|
|
308
|
-
const filePath = path.join(dir, file);
|
|
309
|
-
const stat = await fs.stat(filePath);
|
|
310
|
-
if (stat.isDirectory()) {
|
|
311
|
-
total += await getSize(filePath);
|
|
312
|
-
}
|
|
313
|
-
else {
|
|
314
|
-
total += stat.size;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
return total;
|
|
318
|
-
};
|
|
319
|
-
return await getSize(worldPath);
|
|
320
|
-
}
|
|
321
|
-
catch {
|
|
322
|
-
return 0;
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
174
|
buildJavaArgs() {
|
|
326
175
|
if (this.options.customJavaArgs && this.options.customJavaArgs.length > 0) {
|
|
327
176
|
return this.options.customJavaArgs;
|
|
@@ -692,7 +541,9 @@ class MinecraftServer extends events_1.EventEmitter {
|
|
|
692
541
|
if (this.owners.size > 0) {
|
|
693
542
|
this.logger.info(`Owners configured: ${Array.from(this.owners).join(', ')}`);
|
|
694
543
|
}
|
|
695
|
-
await
|
|
544
|
+
this.javaInfo = await JavaChecker_1.JavaChecker.ensureJava(this.config.version, this.options.usePortableJava || false);
|
|
545
|
+
this.javaCommand = this.javaInfo.path;
|
|
546
|
+
this.logger.success(`Using Java ${this.javaInfo.version} (${this.javaInfo.type}) at ${this.javaInfo.path}`);
|
|
696
547
|
const systemInfo = SystemDetector_1.SystemDetector.getSystemInfo();
|
|
697
548
|
this.logger.debug('System info:', systemInfo);
|
|
698
549
|
const serverDir = process.cwd();
|
|
@@ -1013,6 +864,32 @@ class MinecraftServer extends events_1.EventEmitter {
|
|
|
1013
864
|
}
|
|
1014
865
|
return value;
|
|
1015
866
|
}
|
|
867
|
+
async calculateWorldSize() {
|
|
868
|
+
try {
|
|
869
|
+
const worldPath = path.join(process.cwd(), this.config.folders.world);
|
|
870
|
+
if (!await fs.pathExists(worldPath))
|
|
871
|
+
return 0;
|
|
872
|
+
const getSize = async (dir) => {
|
|
873
|
+
let total = 0;
|
|
874
|
+
const files = await fs.readdir(dir);
|
|
875
|
+
for (const file of files) {
|
|
876
|
+
const filePath = path.join(dir, file);
|
|
877
|
+
const stat = await fs.stat(filePath);
|
|
878
|
+
if (stat.isDirectory()) {
|
|
879
|
+
total += await getSize(filePath);
|
|
880
|
+
}
|
|
881
|
+
else {
|
|
882
|
+
total += stat.size;
|
|
883
|
+
}
|
|
884
|
+
}
|
|
885
|
+
return total;
|
|
886
|
+
};
|
|
887
|
+
return await getSize(worldPath);
|
|
888
|
+
}
|
|
889
|
+
catch {
|
|
890
|
+
return 0;
|
|
891
|
+
}
|
|
892
|
+
}
|
|
1016
893
|
}
|
|
1017
894
|
exports.MinecraftServer = MinecraftServer;
|
|
1018
895
|
//# sourceMappingURL=MinecraftServer.js.map
|