gpt4 book ai didi

git - Maven 对托管在 Git 上的 repo 的依赖

转载 作者:行者123 更新时间:2023-12-02 13:57:34 25 4
gpt4 key购买 nike

我们在我们自己的 git(不是 Github)存储库内部托管了一个 maven 存储库。 git clone 工作正常:

git clone ssh://git@coyote.acme.com/home/git/acme-mvn-repo.git

所以我们知道 ssh key 设置正确。

我们有一个项目,它依赖于托管在 maven 以上存储库中的 Artifact 。为此的 pom.xml 包括:
<repository>
<id>acme-repo</id>
<url>ssh://git@coyote.acme.com/home/git/acme-mvn-repo.git</url>
</repository>

...

<!-- This dependency is in coyote.acme.com/home/git/acme-mvn-repo.git -->
<dependency>
<groupId>coyote.acme.com</groupId>
<artifactId>anvil</artifactId>
<version>1.0.0</version>
</dependency>

...

<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.6</version>
</extension>
</extensions>

执行时:
mvn clean install -U

我们得到:
Failed to read artifact descriptor for coyote.acme.com:anvil:jar:1.0.0: 
Could not transfer artifact coyote.acme.com:anvil:pom:1.0.0 from/to acme-repo
(coyote.acme.com:anvil): No connector available to access rep
ository repo (coyote.acme.com:anvil) of type default using the available factories
WagonRepositoryConnectorFactory -> [Help 1]

我们应该使用不同的连接器吗?

最佳答案

Maven 期望服务器给它单个文件。一个 git repo 只是一个需要 Git 工具来理解它们的变化的集合。所以你所做的没有意义,也永远不会奏效。

您可以做什么:您可以在 HTTP 服务器上克隆存储库。配置它以使根文件夹可从 Web 浏览器访问。当这工作时,您可以简单地在 Maven 中使用相同的 URL。

我建议先尝试让它在网络浏览器中工作,因为它会给你更好的错误消息,你可以使用鼠标浏览 Maven 存储库。

关于git - Maven 对托管在 Git 上的 repo 的依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21313756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com