通过添加
cache:
directories:
- $HOME/.m2
事实证明,它根本不是解决方案,或者只是一个临时的解决方案(上周大约有40个版本;因为 mvnsearch.org 再次可用,或者由于其他原因难以弄清楚),我发现了以下更有前途的解决方案(这比设置Nexus存储库管理器实例更容易,它可以用作镜像):.travis.yml
加
- echo -e '<?xml version="1.0" encoding="UTF-8"?>\n<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"\n xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n <mirrors>\n <mirror>\n <id>mvnsearch-unavailable</id>\n <name>mvnsearch-unavailable</name>\n <mirrorOf>mvnsearch</mirrorOf>\n <url>http://repo1.maven.org/maven2</url>\n </mirror>\n </mirrors>\n <profiles>\n <profile>\n <id>no-mvnsearch</id>\n <repositories>\n <repository>\n <id>mvnsearch</id>\n <url>http://www.mvnsearch.org/maven2</url>\n <releases>\n <enabled>true</enabled>\n </releases>\n <snapshots>\n <enabled>true</enabled>\n </snapshots>\n </repository>\n </repositories>\n </profile>\n </profiles>\n <activeProfiles>\n <activeProfile>no-mvnsearch</activeProfile>\n </activeProfiles>\n</settings>' > $HOME/.m2/settings.xml
- cat $HOME/.m2/settings.xml
这将覆盖任何难以控制的传递依赖关系中的使用,并使用Maven中央存储库 http://repo1.maven.org/maven2 在我的情况下涵盖了所有依赖关系(在其他情况下可能不会)。.travis.yml
http://www.mvnsearch.org/maven2
请注意,墨菲定律适用于任何事情:Maven 3.1.1 忽略了此设置,即使它声称在其调试输出中使用镜像(哎呀!)。
现在,构建速度比临时工作缓存解决方案快 7 分钟。