Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

SyntaxError: Unexpected token ':' — ajv code generation failure in @ui5/project 4.0.17

オープン
#1,642 コメント 1 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@d3xter666 がすでに取り組んでいます。

2026年10月8日 から。

評価

この issue はまだ評価されていません。

説明

module/ui5-project

Here is the final ready-to-copy template with all values filled in:


Title:
SyntaxError: Unexpected token ':' — ajv code generation failure in @ui5/project 4.0.17


## Expected Behavior
Running `npm run int-test` (or any `fiori run` command) starts the local development server and opens the application without errors.

## Current Behavior
The process fails immediately with `SyntaxError: Unexpected token ':'` thrown inside `ajv`'s code generator when `@ui5/project` compiles its JSON schema for validating `ui5.yaml`. The server never starts.

## Steps to Reproduce the Issue
1. Clone a project using `@ui5/project` 4.0.17 (no `package-lock.json` in the repository)
2. Run `npm install` — this resolves `@ui5/[email protected]` which installs a nested `[email protected]` under `node_modules/@ui5/project/node_modules/ajv`
3. Run any `fiori run` command, e.g. `npm run int-test`

## Context
 * UI5 Module Version (output of `ui5 --version` when using the CLI): **`4.0.70`**
 * Node.js Version: **`v24.21.0`**
 * npm Version: `11.19.0`
 * OS/Platform: `Windows 11`
 * Browser *(if relevant)*: `not relevant`
 * Other information regarding your environment:
   - `@ui5/project` version: `4.0.17`
   - `ajv` version (nested in `@ui5/project/node_modules`): `8.20.0`
   - A colleague using an older `@ui5/project` version (installed before 4.0.17 was published) does **not** experience this issue
   - Workaround confirmed: deleting the nested `ajv` folder or downgrading it to `8.17.1` resolves the issue

## Log Output / Stack Trace

Process Failed With Error

Error Message:
Unexpected token ':'

Stack Trace:
SyntaxError: Unexpected token ':'
at new Function ()
at Ajv.compileSchema (node_modules/@ui5/project/node_modules/ajv/dist/compile/index.js:89:30)
at Ajv.inlineOrCompile (node_modules/@ui5/project/node_modules/ajv/dist/compile/index.js:148:47)
at Ajv.resolveRef (node_modules/@ui5/project/node_modules/ajv/dist/compile/index.js:142:46)
at Object.code (node_modules/@ui5/project/node_modules/ajv/dist/vocabularies/core/ref.js:19:47)
at keywordCode (node_modules/@ui5/project/node_modules/ajv/dist/compile/validate/index.js:464:13)
at CodeGen.code (node_modules/@ui5/project/node_modules/ajv/dist/compile/codegen/index.js:439:13)
at CodeGen.block (node_modules/@ui5/project/node_modules/ajv/dist/compile/codegen/index.js:568:18)
at schemaKeywords (node_modules/@ui5/project/node_modules/ajv/dist/compile/validate/index.js:185:13)


**Workaround:**

Deleting the nested `ajv` folder forces fallback to the top-level `[email protected]`, which works correctly:

```bash
# Windows (PowerShell)
Remove-Item -Recurse -Force "node_modules/@ui5/project/node_modules/ajv"

# Alternative
npm install --no-save --prefix node_modules/@ui5/project [email protected]

Note: both workarounds must be re-applied after every npm install.

主要言語
JavaScript
スター
511
フォーク
83
平均マージ
1日 3時間
マージ済み PR(30日)
54

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

UI5/cli のほかの issue

UI5/cli の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。