-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfixGradleWrapper.js
More file actions
49 lines (41 loc) · 1.46 KB
/
fixGradleWrapper.js
File metadata and controls
49 lines (41 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
const fs = require('fs');
const path = require('path');
function safeCopyFile(src, dest) {
if (!fs.existsSync(src)) return false;
fs.copyFileSync(src, dest);
return true;
}
function run() {
const repoRoot = path.join(__dirname, '..');
const androidDir = path.join(repoRoot, 'android');
const destDir = path.join(repoRoot, 'build', 'android');
if (!fs.existsSync(androidDir)) {
console.warn('No android directory found to copy from:', androidDir);
return;
}
fs.mkdirSync(destDir, { recursive: true });
// Copy wrapper scripts
const gradlew = path.join(androidDir, 'gradlew');
const gradlewBat = path.join(androidDir, 'gradlew.bat');
if (safeCopyFile(gradlew, path.join(destDir, 'gradlew'))) {
try { fs.chmodSync(path.join(destDir, 'gradlew'), 0o755); } catch (e) {}
console.log('Copied gradlew to', destDir);
}
if (safeCopyFile(gradlewBat, path.join(destDir, 'gradlew.bat'))) {
console.log('Copied gradlew.bat to', destDir);
}
// Copy gradle directory if present
const gradleDir = path.join(androidDir, 'gradle');
const destGradleDir = path.join(destDir, 'gradle');
if (fs.existsSync(gradleDir)) {
// Use recursive copy available in Node 16+
try {
fs.cpSync(gradleDir, destGradleDir, { recursive: true });
console.log('Copied gradle/ to', destGradleDir);
} catch (e) {
console.warn('Failed to copy gradle directory:', e.message);
}
}
}
if (require.main === module) run();
module.exports = run;