If the encoding is not defined while compiling with Maven you’ll likely see the following warning:
... [WARNING] Using platform encoding (MacRoman actually) to copy filtered resources, i.e. build is platform dependent! ...
Explicitly specifying the encoding in the POM is the way to go:
<project> ... <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> ... </project>
and Maven acknowledges with the following while logging:
... [INFO] Using 'UTF-8' encoding to copy filtered resources. ...