Import @vaadin/router sometimes failing

Hi,

Every now and then I get the following error while developing.
Not sure why this is, and I also have not found exactly when it is happening.

I also see the same error in Intellij when I openen index.ts.

My colleague had the same issue with a different module: something about workbox-build.

Any ideas where this is coming from?

Running vaadinClean fixes this … but I’m trying to understand what causes it.

Kind regards,
Kristof.

2026-04-07 20:22:00 INFO  c.v.b.d.AbstractDevServerRunner - Started Vite. Time: 1126ms
2026-04-07 20:22:00 INFO  c.v.b.d.DevServerOutputTracker - 
2026-04-07 20:22:00 INFO  c.v.b.d.DevServerOutputTracker -   ➜  Local:   http://127.0.0.1:60732/VAADIN/
2026-04-07 20:22:01 INFO  c.v.b.d.DevModeHandlerManagerImpl - Application running at http://localhost:8080/
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker - 
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -  ERROR(TypeScript)  Cannot find module '@vaadin/router' or its corresponding type declarations.
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -  FILE  /Users/blablabla-webapp/src/main/frontend/generated/index.ts:14:24
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker - 
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -     12 |
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -     13 | // import Vaadin client-router to handle client-side and server-side navigation
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -   > 14 | import { Router } from '@vaadin/router';
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -        |                        ^^^^^^^^^^^^^^^^
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -     15 |
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -     16 | // import Flow module to enable navigation to Vaadin server-side views
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker -     17 | import { Flow } from 'Frontend/generated/jar-resources/Flow.js';
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker - 
2026-04-07 20:22:01 INFO  c.v.b.d.DevServerOutputTracker - [TypeScript] Found 1 error. Watching for file changes.
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker - [vite] (client) Pre-transform error: Failed to resolve import "@vaadin/router" from "src/main/frontend/generated/index.ts". Does the file exist?
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   Plugin: vite:import-analysis
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   File: /Users/blablabla-webapp/src/main/frontend/generated/index.ts:14:23
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   1  |  import { Router } from "@vaadin/router";
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -      |                          ^
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   2  |  import { Flow } from "Frontend/generated/jar-resources/Flow.js";
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   3  |  const { serverSideRoutes } = new Flow({
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker - [vite] Internal server error: Failed to resolve import "@vaadin/router" from "src/main/frontend/generated/index.ts". Does the file exist?
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   Plugin: vite:import-analysis
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   File: /Users/blablabla-webapp/src/main/frontend/generated/index.ts:14:23
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   1  |  import { Router } from "@vaadin/router";
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -      |                          ^
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   2  |  import { Flow } from "Frontend/generated/jar-resources/Flow.js";
2026-04-07 20:27:18 INFO  c.v.b.d.DevServerOutputTracker -   3  |  const { serverSideRoutes } = new Flow({

I remember similar issues happening because of IDEA running the vaadinPrepareFronted task when recompiling, and the task for some reason deleting some generated files.

But, IIRC, this was fixed,

BTW, which Vaadin version are you using?

However, this looks a bit different since it is failing to import from a module, not from a generated file.

I’m using Vaadin 25.1.0.
I’ve been trying to reproduce it, but until now failed to do so! :face_with_diagonal_mouth:

When I get it again, I hope I will have some new information.

Not that annoying currently, a vaadingClean and restart doesn’t take that long.

Kind regards,
Kristof.