quasarframework/quasar · warning
The file defined in bex manifest > content_scripts > js > "$
Error message
The file defined in bex manifest > content_scripts > js > "${rawName}" does NOT exist. Skipping. What it means
extractBexScripts maps each content_scripts[i].js entry to a compiled script. When the referenced source file does not exist under src-bex, it warns and skips that content script.
Source
Thrown at app-vite/lib/modes/bex/bex-utils.js:161
}
const entry = getCompilationEntry(quasarConf, inputFile, scriptName)
if (!scriptNameSet.has(entry.name)) {
scriptNameSet.add(entry.name)
scriptList.push(entry)
}
})
bexManifest.content_scripts?.forEach(contentScript => {
contentScript.js?.forEach((rawName, index) => {
const scriptName = rawName.replace(scriptExtRE, '')
const inputFile = quasarConf.ctx.appPaths.resolve.bex(rawName)
contentScript.js[index] = scriptName + '.js'
if (!fse.existsSync(inputFile)) {
warn()
warn(
`The file defined in bex manifest > content_scripts > js > "${rawName}" does NOT exist. Skipping.`
)
warn()
return
}
const entry = getCompilationEntry(quasarConf, inputFile, scriptName)
if (!scriptNameSet.has(entry.name)) {
scriptNameSet.add(entry.name)
scriptList.push(entry)
}
})
})
quasarConf.bex.extraScripts.forEach(rawName => {
const inputFile = quasarConf.ctx.appPaths.resolve.bex(rawName)
if (!fse.existsSync(inputFile)) {View on GitHub (pinned to 4841521b5f)
Solutions
- Correct the content_scripts js path in src-bex/manifest.json to the actual file.
- Create the referenced file inside src-bex.
- Delete the stale content-script entry if it is no longer needed.
- Verify casing/extension (e.g. content.js vs Content.tsx compiled name).
Example fix
// before
"content_scripts": [{ "js": ["contentscript.js"] }] // actual file: content-script.js
// after
"content_scripts": [{ "js": ["content-script.js"] }] Defensive patterns
Strategy: validation
Validate before calling
const fs = require('fs'), path = require('path')
for (const cs of require('./src-bex/manifest.json').all?.content_scripts || []) {
for (const f of cs.js || []) {
if (!fs.existsSync(path.join('src-bex', f))) throw new Error(`content script missing: src-bex/${f}`)
}
} Prevention
- Update content_scripts paths in the same commit as file renames.
- Reference source files by their exact path inside src-bex, no globs.
- Check casing carefully when developing on macOS/Windows and deploying on Linux.
When it happens
Trigger: manifest content_scripts[].js contains a filename that does not resolve to an existing file in src-bex; fse.existsSync fails and the entry is skipped.
Common situations: Content script renamed/refactored without updating the manifest; file added to the wrong folder (must be inside src-bex); glob-like paths that the resolver doesn't expand; case mismatch on Linux.
Related errors
- The file defined in bex manifest > background > service_work
- The file defined in bex manifest > background > scripts > "$
- Could not read BEX manifest. Please check its syntax.
- The BEX manifest requires a "manifest_version" prop, which i
- The bex manifest version specified (${json.manifest_version}
AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30).
Data as JSON: /api/errors/5dad910d300e78e0.
Report an issue: GitHub.