One of the issues highlighted is that the ecosystem moves fast and dependencies tend to break your setup. One thing that at least partially has mitigated this problem for me is using a stack that is mature and very careful about breaking changes. Clojure is a great example of that. My gut feeling tells me that if you had a repo in Clojure that created your static pages 5 years ago (when Java 8 was released) it will still work today.