mirror of
https://github.com/johndoe6345789/low-code-react-app-b.git
synced 2026-04-24 13:44:54 +00:00
108 lines
2.9 KiB
Markdown
108 lines
2.9 KiB
Markdown
# Build Troubleshooting Guide
|
|
|
|
## Common Build Issues
|
|
|
|
### "cp: cannot create regular file '/tmp/dist/proxy.js': No such file or directory"
|
|
|
|
**Symptoms:**
|
|
- Build completes successfully with all assets generated in `dist/` folder
|
|
- Final line shows error: `cp: cannot create regular file '/tmp/dist/proxy.js': No such file or directory`
|
|
- Message "Copying extra files..." appears before the error
|
|
|
|
**Root Cause:**
|
|
This error occurs when the Spark runtime build orchestration system attempts to copy runtime proxy files to a temporary directory that doesn't exist. This is an external post-build step that happens AFTER the Vite build completes successfully.
|
|
|
|
**Impact:**
|
|
- **Low to None**: The actual application build succeeds completely
|
|
- All application assets are correctly generated in the `dist/` folder
|
|
- The error occurs during optional runtime file copying
|
|
- The built application will function normally
|
|
|
|
**Solutions:**
|
|
|
|
1. **Ignore the error** (Recommended for development):
|
|
- The Vite build succeeded and generated all necessary files
|
|
- The `dist/` folder contains a complete, working build
|
|
- This error does not affect application functionality
|
|
|
|
2. **Fix for CI/CD pipelines**:
|
|
- Ensure the CI/CD system creates the `/tmp/dist/` directory before building
|
|
- Add to your CI/CD workflow:
|
|
```yaml
|
|
- name: Pre-build setup
|
|
run: mkdir -p /tmp/dist
|
|
```
|
|
|
|
3. **Fix for local builds**:
|
|
- Create the directory manually:
|
|
```bash
|
|
mkdir -p /tmp/dist
|
|
npm run build
|
|
```
|
|
|
|
**Related Files:**
|
|
- Build output: `dist/` (application build - this is what matters)
|
|
- Runtime proxy: `packages/spark-tools/dist/runtimeProxy.js`
|
|
- Vite config: `vite.config.ts`
|
|
|
|
### Successful Build Indicators
|
|
|
|
Even with the proxy.js copying error, your build is successful if you see:
|
|
|
|
✓ All these asset files in `dist/`:
|
|
- `index.html`
|
|
- `assets/index-*.js` (main bundle)
|
|
- `assets/react-vendor-*.js`
|
|
- `assets/ui-core-*.js`
|
|
- `assets/*.css`
|
|
- And other chunked assets
|
|
|
|
✓ Message: `✓ built in X.XXs`
|
|
|
|
✓ No TypeScript compilation errors
|
|
|
|
## Other Common Issues
|
|
|
|
### TypeScript Compilation Errors
|
|
|
|
If you see TypeScript errors during build:
|
|
```bash
|
|
npm run build
|
|
```
|
|
|
|
Fix by addressing the specific TypeScript errors shown, or temporarily bypass with:
|
|
```bash
|
|
npm run build -- --force
|
|
```
|
|
|
|
### Out of Memory Errors
|
|
|
|
If Node.js runs out of memory during build:
|
|
```bash
|
|
NODE_OPTIONS="--max-old-space-size=4096" npm run build
|
|
```
|
|
|
|
### Vite Port Already in Use (Dev Server)
|
|
|
|
```bash
|
|
npm run kill # Kills process on port 5000
|
|
npm run dev
|
|
```
|
|
|
|
### Missing Dependencies
|
|
|
|
```bash
|
|
npm install --legacy-peer-deps
|
|
```
|
|
|
|
## Build Performance
|
|
|
|
Current build produces:
|
|
- **Main bundle**: ~474 KB (148 KB gzipped)
|
|
- **React vendor**: Separated chunk
|
|
- **UI components**: Split into core and extended chunks
|
|
- **Icons**: ~241 KB (55 KB gzipped)
|
|
- **Total build time**: ~16s
|
|
|
|
Code splitting ensures users only download what they need for each route.
|