我使用mvn deploy命令在存储库服务器上部署了我的java项目工件。当我部署工件(发布版本)时,我还使用以下代码片段部署了javadocs和source。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
现在我通过在上面的代码片段上发布了相同的项目(相同的发布版本),maven dint删除了额外的工件(source和javadocs)。这是预期的吗?
答案 0 :(得分:0)
这是正常行为。
您不应该重新部署已发布的版本。原因如下:
当您意识到自己的代码存在问题而且您已经发布时,建议的做法(除非您使用的是暂存存储库)是仅部署新版本增加的数字。您部署新版本的次数越多(当然有理由),您的库/产品的用户就越有信心开发活动并且(希望)修复了一些事情。默默地重新部署相同的版本肯定会导致混乱和不眠之夜。
另外,Maven没有:
maven-metadata.xml
个文件这取决于你。您需要使用工件存储库管理器重建元数据(如果已经部署)(除非这是快照)。