Skip to content

Failed to read token file content when packaging for production #22679

@mshabarov

Description

@mshabarov

Description of the bug

This exception is thrown and empty flow-build-info.json file generated when I try to build Flow CRM tutorial project for production:

[INFO] Running Vite ...
[ERROR] Failed to read token file content.
java.nio.file.NoSuchFileException: /.../flow-crm-tutorial/target/classes/META-INF/VAADIN/config/flow-build-info.json
    at sun.nio.fs.UnixException.translateToIOException (UnixException.java:94)
    at sun.nio.fs.UnixException.rethrowAsIOException (UnixException.java:108)
    at sun.nio.fs.UnixException.rethrowAsIOException (UnixException.java:114)
    at sun.nio.fs.UnixFileSystemProvider.newByteChannel (UnixFileSystemProvider.java:261)
    at java.nio.file.Files.newByteChannel (Files.java:380)
    at java.nio.file.Files.newByteChannel (Files.java:432)
    at java.nio.file.Files.readAllBytes (Files.java:3281)
    at java.nio.file.Files.readString (Files.java:3359)
    at java.nio.file.Files.readString (Files.java:3318)
    at com.vaadin.flow.plugin.base.BuildFrontendUtil.runFrontendBuild (BuildFrontendUtil.java:515)
    at com.vaadin.flow.plugin.maven.BuildFrontendMojo.executeInternal (BuildFrontendMojo.java:172)
    at com.vaadin.hilla.maven.BuildFrontendMojo.executeInternal (BuildFrontendMojo.java:70)
    at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:103)
    at java.lang.reflect.Method.invoke (Method.java:580)
    at com.vaadin.flow.plugin.maven.FlowModeAbstractMojo.execute (FlowModeAbstractMojo.java:349)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:103)
    at java.lang.reflect.Method.invoke (Method.java:580)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
[WARNING] Found dependencies defined with different versions in project and Vaadin maven plugin.
Project dependencies are used, but plugin execution could fail if the versions are incompatible.
In case of build failure please analyze the project dependencies and update versions or configure exclusions for potential offending transitive dependencies.
You can use 'mvn dependency:tree -Dincludes=groupId:artifactId' to detect where the dependency is defined in the project.

org.apache.commons:commons-lang3:jar: project version [3.19.0], plugin version [3.18.0]
org.apache.commons:commons-text:jar: project version [1.13.1], plugin version [1.14.0]
io.github.classgraph:classgraph:jar: project version [4.8.179], plugin version [4.8.180]
org.yaml:snakeyaml:jar: project version [2.5], plugin version [2.3]
jakarta.xml.bind:jakarta.xml.bind-api:jar: project version [4.0.4], plugin version [3.0.1]
jakarta.validation:jakarta.validation-api:jar: project version [3.1.1], plugin version [3.0.2]
com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar: project version [2.20.0], plugin version [2.19.2]
org.jetbrains.kotlin:kotlin-reflect:jar: project version [2.2.20], plugin version [2.1.21]
org.jetbrains.kotlin:kotlin-stdlib:jar: project version [2.2.20], plugin version [2.1.21]
org.springframework:spring-beans:jar: project version [7.0.0-RC2], plugin version [7.0.0-RC1]
[ERROR] The build process encountered an error: class tools.jackson.databind.node.MissingNode cannot be cast to class tools.jackson.databind.node.ObjectNode (tools.jackson.databind.node.MissingNode and tools.jackson.databind.node.ObjectNode are in unnamed module of loader com.vaadin.flow.plugin.maven.Reflector$ReflectorClassLoader @557bf0f0)
[ERROR] To diagnose the issue, please re-run Maven with the -X option to enable detailed debug logging and identify the root cause.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  16.315 s
[INFO] Finished at: 2025-11-06T14:31:45+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.vaadin:vaadin-maven-plugin:25.0.0-beta4:build-frontend (package-for-production) on project flowcrmtutorial: null: MojoFailureException: InvocationTargetException: class tools.jackson.databind.node.MissingNode cannot be cast to class tools.jackson.databind.node.ObjectNode (tools.jackson.databind.node.MissingNode and tools.jackson.databind.node.ObjectNode are in unnamed module of loader com.vaadin.flow.plugin.maven.Reflector$ReflectorClassLoader @557bf0f0) -> [Help 1]

Maven also reports Jackson-related error.

Expected behavior

Production build succeeds

Minimal reproducible example

https://github.com/vaadin/flow-crm-tutorial/tree/flow-build-info-error

run mvn clean package -DskipTests

The project has prod.bundle committed, but if you clean it up the error should persist.

Versions

  • Vaadin / Flow version: 25.0.0-beta4
  • Java version: 21
  • Spring Boot 4.0.0-RC1

Metadata

Metadata

Assignees

Type

Projects

Status

🏗 WIP

Status

🔎Iteration reviews

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions