我设法设置了maven,因此它会自动将我们软件的最新快照上传到我们的公共maven存储库。 到目前为止,这种方法很好,只有一个我无法处理的小缺点:
部署新快照时,例如:
<version>1.2-SNAPSHOT</version>
名为1.2-SNAPSHOT
的目录必须出现在我们的网络服务器的maven目录中,否则maven会失败,说明:
Failed to deploy artifacts: Could not transfer artifact ... from/to basex.mvn
(http://abc.de/webdav/): Access denied to: http://abc.de/webdav/1.2-SNAPSHOT/...
通常在启动新快照时,此目录尚未存在,因此我最终手动创建它。
你对如何解决这个问题并让maven创建这个文件夹有什么想法吗?
答案 0 :(得分:1)
您确定它不是服务器端问题吗? 我使用Webdav(通过HTTPS)部署了一些库,并且第一次(使用目录创建)它可以工作。
Pom.xml
应包含分发服务器的说明。
<distributionManagement>
<repository>
<id>RepoId</id>
<name>Name of the Maven repository</name>
<url>dav:https://thewebdavurl/</url>
<uniqueVersion>false</uniqueVersion>
</repository>
</distributionManagement>
要启用目录创建,您可能需要登录服务器。为此,您需要在setting.xml
的{{1}}凭据的服务器部分添加(请参阅pom中存储库的ID)。
RepoId