| 123456789101112131415161718 |
- import { build } from 'esbuild'
- import { mkdir } from 'node:fs/promises'
- import { resolve } from 'node:path'
- import { fileURLToPath } from 'node:url'
- export async function buildRunner(directory = resolve(import.meta.dirname, '../.runner-build')) {
- await mkdir(directory, { recursive: true })
- await build({
- entryPoints: [resolve(import.meta.dirname, '../src/runner/index.ts')],
- outfile: resolve(directory, 'runner.mjs'), bundle: true, platform: 'node',
- format: 'esm', target: 'node24', sourcemap: true,
- banner: { js: "import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);" },
- })
- }
- if (process.argv[1] && resolve(process.argv[1]) === fileURLToPath(import.meta.url)) {
- await buildRunner()
- console.log('执行节点已打包到 .runner-build/runner.mjs(需要 Node.js 24 或更高版本)')
- }
|