Windows環境でyarnやnpmでコマンド(スクリプト)を実行すると、「basedirがどうのこうの」というSyntaxErrorエラーが表示されることがあります。
例えば、Vuetifyをインストールした環境でyarn devを実行すると、以下のようなエラーとなります。
> yarn dev
yarn run v1.22.19
$ node --no-warnings ./node_modules/.bin/vite
C:\Users\th\Desktop\card-realtime\front\node_modules\.bin\vite:2
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
^^^^^^^
SyntaxError: missing ) after argument list
at internalCompileFunction (node:internal/vm:73:18)
at wrapSafe (node:internal/modules/cjs/loader:1178:20)
at Module._compile (node:internal/modules/cjs/loader:1220:27)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47
この問題の対処法をメモしておきます。
【解決法】package.jsonを修正する
package.jsonのscriptsに原因があります。
.bin
ディレクトリ以下が指定されているとエラーが起こるようです。
{
"name": "card-realtime-front",
"version": "0.0.0",
"scripts": {
"dev": "node --no-warnings ./node_modules/.bin/vite",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"@mdi/font": "7.0.96",
"roboto-fontface": "*",
"vue": "^3.3.0",
"vuetify": "^3.0.0"
},
"devDependencies": {
"@vitejs/plugin-vue": "^4.5.0",
"sass": "^1.69.0",
"unplugin-fonts": "^1.1.0",
"unplugin-vue-components": "^0.26.0",
"vite": "^5.0.0",
"vite-plugin-vuetify": "^2.0.0"
}
}
.binではなくファイルの実体を直接指定します。
"scripts": {
"dev": "node --no-warnings ./node_modules/vite/bin/vite.js",
"build": "vite build",
"preview": "vite preview"
},
これで解決しました。
コメント