通过webdav使用mvn deploy:创建目录

mic*_*ael 5 deployment webdav maven

我设法设置了maven,因此它会自动将我们软件的最新快照上传到我们的公共maven存储库.到目前为止这个工作正常,只有一个我无法处理的小缺点:

在部署新快照时,比如说: 我们的webserver的maven目录中必须存在<version>1.2-SNAPSHOT</version> 一个名为1.2-SNAPSHOT的目录,否则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创建这个文件夹吗?

YMo*_*omb 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>
Run Code Online (Sandbox Code Playgroud)

要启用目录创建,您可能需要登录服务器。为此,您需要在服务器部分添加setting.xml凭据RepoId(请参阅 pom 中存储库的 id)。

<server>
   <id>RepoId</id>
   <username>login</username>
   <password>pass</password>
</server>
Run Code Online (Sandbox Code Playgroud)