栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在下载依赖项时使Maven提前超时?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在下载依赖项时使Maven提前超时?

在2.1之前的Maven版本中,没有方法可以将客户端配置为超时,但是如果您设置了更新策略,则可以将其配置为较少检查更新。这部分解决了这个问题。

例如:

<repository>  <id>myrepo</id>  <url>http://maven.mycompany.com/m2</url>  <releases>    <enabled>true</enabled>    <updatePolicy>daily</updatePolicy>  </releases>  <snapshots>    <enabled>false</enabled>    <updatePolicy>always</updatePolicy>  </snapshots></repository>

有效值为:

  • 始终-始终检查何时启动Maven以获取较新版本的快照
  • 从不-从不检查较新的远程版本。一旦关闭,便可以执行手动更新。
  • 每天(默认)-检查一天的第一轮(当地时间)
  • 时间间隔:XXX-每XXX分钟检查一次

另一个考虑因素是用于托管内部存储库的软件。使用Nexus等存储库管理器,您可以通过管理器管理所有外部远程存储库连接,并为这些远程连接配置超时。然后,您的客户端将仅查询存储库管理器,该管理器应在超时允许的范围内尽快响应。


更新:

如果您知道某个特定存储库将不再提供依赖项,则可以将其分为一个配置文件,因此该构建中不会引用它。

<profiles>  <profile>    <id>remote</id>    <repositories>      <repository>        <id>central</id>        <url>http://repo1.maven.org</url>        <releases><enabled>true</enabled></releases>        <snapshots><enabled>false</enabled></snapshots>      </repository>      ...    </repositories>  </profile>  <profile>    <id>internal</id>    <repositories>      <repository>        <id>myrepo</id>        <url>http://maven.mycompany.com/m2</url>        <releases><enabled>true</enabled></releases>        <snapshots><enabled>false</enabled></snapshots>      </repository>      ...    </repositories>  </profile></profiles>

使用上述配置,运行 mvn软件包-Premote 将不会连接到内部存储库,因此超时不会成为一个因素。

您可以通过在设置中添加一些额外的配置来避免在每个构建中指定配置文件:

<settings>  ...  <activeProfiles>    <activeProfile>internal</activeProfile>    <activeProfile>remote</activeProfile>  </activeProfiles>  ...</settings>

对于Maven 2.1,您可以通过在Maven设置中添加服务器上的配置(

~/.m2/settings.xml
默认情况下)来设置超时,例如:

<server>  <id>myrepo</id>  <configuration>    <timeout>5000</timeout> <!-- 5 seconds -->  </configuration></server>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/508264.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号