As you know, Vaadin 7.7 Maven build packs .java files to vaadin-server and vaadin-shared JARs.
maven-resources-plugin used in Vaadin build does it wrong!
maven-resources-plugin packs java files to JARs with timestamp (Update time of file) greater than .class files. That leads to problems in some build systems, for example - in Gradle 2.6.
In our application we don’t have Portlet API and when we try to build the application Gradle finds .java files from vaadin-server instead of .class files, because .java files have greater timestamp than .class files.
I have seen this problem in many Vaadin addons with Maven build for years, please don’t repeat it again. Do not use maven-resources-plugin to add .java files to your JARs.
Just define resources tag in your build tag:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
</resource>
</resources>
And remove this from resources tag of maven-resources-plugin:
<resource>
<directory>src/main/java</directory>
<filtering>false</filtering>
</resource>
Thank you for Vaadin Maven build, but please use it with wisely.