我有一个在 archlinux VM 上运行的 jetty 8 服务器。我将 bftpd 安装为 FTP 服务器,并将我的 maven 项目配置如下:
...
<distributionManagement>
<repository>
<id>personal-ftp-repository</id>
<url>ftp://www.example.com</url>
</repository>
</distributionManagement>
...
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ftp</artifactId>
<version>1.0-beta-6</version>
</extension>
...
在我的 settings.xml 中正确定义了为 distributionManagement 指定名称的存储库,并且部署工作正常,因为它在运行 mvn deploy 时正确上传了组装的 WAR。
但是上传的文件会获得不需要的文件权限。我已将 bftpd UMASK 设置为 000,这导致上传目录的文件权限为 777,上传文件的文件权限为 666。但是这些服务器无法执行,因此码头无法为它们提供服务。
当我手动将 WAR 文件的权限切换到 777 时,该文件将按预期提供。但是当我尝试通过 mvn deploy 上传较新版本的 WAR 时,它报告 FTP 服务器响应:553 错误:远程文件被写保护。即使码头服务器已停止。
必须有一种方法来部署 WAR,而无需手动删除旧的,部署然后必须手动设置文件权限,但我找不到。