我有一个使用React Vite + Typescript + SWC的项目。当我尝试在我的机器上构建它时,我也尝试在我的合作伙伴的机器上构建,它成功构建,我可以测试它,一切都很好,但是当我尝试在Jenkins管道中构建它时失败了。
我得到以下错误:
17:23:17 rendering chunks...
17:23:37 [31m[vite:build-html] The "fileName" or "name" properties of emitted chunks and assets must be strings that are neither absolute nor relative paths, received "f:/Jenkins/workspace/CI.DevOps/web/index.html".[39m
17:23:37 [32m✓ built in 54.67s[39m
17:23:37 [31merror during build:
17:23:37 RollupError: The "fileName" or "name" properties of emitted chunks and assets must be strings that are neither absolute nor relative paths, received "f:/Jenkins/workspace/CI.DevOps/web/index.html".
17:23:37 at error (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/node_modules/rollup/dist/es/shared/parseAst.js:337:30)
17:23:37 at FileEmitter.emitFile (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:18145:24)
17:23:37 at Object.generateBundle (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/dist/node/chunks/dep-R0I0XnyH.js:38945:22)
17:23:37 at async Bundle.generate (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:17006:9)
17:23:37 at async file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:19552:27
17:23:37 at async catchUnfinishedHookActions (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/node_modules/rollup/dist/es/shared/node-entry.js:18983:16)
17:23:37 at async build (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/dist/node/chunks/dep-R0I0XnyH.js:66815:22)
17:23:37 at async CAC.<anonymous> (file:///f:/Jenkins/workspace/CI.DevOps/web/node_modules/vite/dist/node/cli.js:845:9)�[39m
17:23:37 error Command failed with exit code 1.
17:23:37 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
17:23:37 Build step 'Execute Windows batch command' marked build as failure
字符串
这是我的tsconfig.json
:
{
"compilerOptions": {
"useDefineForClassFields": true,
"lib": ["ES2023", "DOM", "DOM.Iterable"],
"module": "ESNext",
"skipLibCheck": true,
"target": "es2022",
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx",
"strict": true,
"noUnusedLocals": false,
"noUnusedParameters": false,
"noFallthroughCasesInSwitch": true,
"allowJs": false,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"baseUrl": ".",
"paths": { "@/*": ["src/*"] }
},
"include": ["src", ".eslintrc.js"]
}
型
我的vite.config.ts
import react from '@vitejs/plugin-react-swc';
import path from 'path';
import { visualizer } from 'rollup-plugin-visualizer';
import { defineConfig, PluginOption } from 'vite';
import svgr from 'vite-plugin-svgr';
export default defineConfig({
plugins: [
react(),
svgr(),
visualizer({
template: 'treemap',
gzipSize: true,
brotliSize: true,
filename: '.stats/treemap.html',
}) as PluginOption,
],
resolve: {
alias: {
'@': path.resolve(__dirname, 'src'),
},
},
});
型
在我的jenkins管道中,我只是运行“yarn && yarn build”。这是我的yarn build命令:
"build": "cross-env CI=false && tsc && vite build --outDir build",
型
2条答案
按热度按时间uxhixvfz1#
我已经找到了导致这个问题的问题。它与Jenkins服务器内部的符号链接有关。我不得不添加行'AntiveSymlinks:true'来修复它。下面是更新的代码:
字符串
ee7vknir2#
enter code here
找到了,我想:字符串
这里的文件名是相对的,不是aboslute。也许你在.gitignore中有一个文件没有被推送,忽略这个错误。