Cross-project caching for the .m2 folder

Hello everyone! I have an issue with caching .m2 folder across projects. Every time pom.xml is changed, the cache is refreshed in circleci and it increases the build time of the project by minutes - because we need to fetch fresh dependencies from nexus, which can take some time (we do dependency caching inside of one project, though it doesn’t help in this case). I tried to use s3 bucket as cache storage, though it was too slow and didn’t work for me even on a local machine using s3fs. Does anyone had a similar issue and may be found good solutions for this problem, (like using some external cache that is safe for concurrent I/O operations and is faster than fetching data from nexus each time) .m2 folder can get pretty huge (10-15GB) as we have many projects that use both internal and external dependencies. Thank you so much in advance.