Hilla 24.4.1 prepare-frontend fails with NoSuchMethodError IOUtils.skip

The build on out integration server fails with the following error message:

Failed to execute goal com.vaadin:hilla-maven-plugin:24.4.1:prepare-frontend (default) on project sync-app: Execution default of goal com.vaadin:hilla-maven-plugin:24.4.1:prepare-frontend failed: An API incompatibility was encountered while executing com.vaadin:hilla-maven-plugin:24.4.1:prepare-frontend: java.lang.NoSuchMethodError: 'long org.apache.commons.io.IOUtils.skip(java.io.InputStream, long, java.util.function.Supplier)'

It works on my machine™.

Both on Ubuntu with OpenJDK 17 and Maven 3.8. The only difference I could find is that locally I have Node 18.18.1 and the integration server uses Node 20.14.0.

Has someone seen and solved that problem already?

Thanks in advance
Olaf

Make sure you use the latest commons-io version. Sounds like there is a conflict and depending on some maven internals… your machine got lucky :wink:

We do not have commons-io as a direct dependency.

The method IOUtils.skip(java.io.InputStream, long, java.util.function.Supplier) has been introduced in commons-io 2.14. Vaadin uses 2.13 in vaadin-spring-boot-starter.

Will try to add a newer version.

image

Probably not related, but you should use vaadin-maven-plugin with 24.4, not hilla-maven-plugin

2 Likes

Thanks, that’s the solution. hilla-maven-plugin uses commons-io 2.13.0, vaadin-maven-plugin uses 2.16.1.