在Maven 2.1之前的版本中,无法将客户端配置为超时,但如果设置了更新策略,则可以将其配置为检查更新的频率较低。这部分解决了这个问题。
例如:
代码语言:javascript运行复制
有效值包括:
Maven
always -在启动Maven时始终检查snapshots
never的更新版本-从不检查更新的远程版本。一次性手动更新可以是performed.
daily (默认)-在当天的第一次运行时检查(本地time)
interval:XXX -每XXX分钟检查一次
另一个考虑因素是您用来托管内部存储库的软件。使用诸如Nexus之类的存储库管理器,您可以通过该管理器管理所有外部远程存储库连接,并为这些远程连接配置超时。然后,您的客户端将只查询存储库管理器,该管理器应在超时允许的情况下尽可能快地响应。
更新:
如果您知道依赖关系不会由特定的存储库提供服务,您可以将其分离到一个配置文件中,这样它就不会在该构建中被引用。
代码语言:javascript运行复制
...
...
使用上面的配置,运行mvn package -Premote将不会连接到内部存储库,因此超时不会成为一个因素。
通过将一些额外的配置添加到您的设置中,可以避免在每次构建时指定配置文件:
代码语言:javascript运行复制
...
...
对于Maven2.1,您可以通过在Maven设置(默认情况下为~/.m2/settings.xml)中添加服务器上的配置来设置超时,例如:
代码语言:javascript运行复制