https://bz.apache.org/bugzilla/show_bug.cgi?id=57129
--- Comment #50 from Philippe Cloutier <chea...@gmail.com> --- Thank you very much for reporting Jörgen and all those who commented constructively My employer is one of those organizations which lost hours due to variability in loading order. For those who are still struggling to understand the behavior they are experiencing, this not only causes specific WAR files to change behavior on different Tomcat versions, but it also causes the same Tomcat version (8+) to treat 2 WAR files with the same archived contents differently. Indeed, 2 WAR files which extract to identical file sets can still be binarily different by having their files at different offsets. Typically, with Maven, if a project depends on 3 libraries and pom.xml lists B before A and finally C, the WAR file can contain b.jar before a.jar and finally c.jar. But it can also be alphabetical (a.jar, b.jar, c.jar). I've verified that the same Maven version (3.8.6) building identical code, when invoked in equivalent ways, can result in such binarily different WAR-s, which - in our case - therefore behave differently under Tomcat 8.5 on Red Hat Enterprise Linux 7. Red Hat Enterprise Linux 7's readdir visibly returns in creation order. My best guess is Maven packages .jar files in alphabetical order on Microsoft Windows, while it uses Maven's Resolved Dependencies order when packaging on Red Hat Enterprise Linux. If so, this effectively means that moving builds from Windows to GNU/Linux could suffice to cause regressions. I do not know how to avoid that besides ensuring that the WAR-s do not contain classes with identical fully qualified names. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org