当前位置: 首页 > 知识库问答 >
问题:

无法使用FTP协议从FTP Maven存储库下载依赖项工件

姬承教
2023-03-14

我有以下问题:出于测试目的,我使用FTP服务器作为存储库。部署(上传)不同的工件都可以正常工作。一旦我需要解析和下载之前上传到该存储库的工件依赖项,我就会收到以下警告:
[WARN]myrepo(ftp://ftp.myftpadress.fr/dev/M2Repo/,发布快照)被忽略(仅支持S3、HTTP/S和FILE)。
我无法使用HTTP协议访问存储库。那么货车是否支持FTP协议来下载所需的工件?

这是我的POM“马车”部分:

...
    <extensions>
        <extension>
            <groupId>org.apache.maven.wagon</groupId>
            <artifactId>wagon-ftp</artifactId>
            <!-- I tried with older versions also-->
            <version>2.2</version>
        </extension>
    </extensions>
</build>
<repositories>
    <repository>
        <id>myrepo</id>
        <name>my Maven Repository</name>
        <url>ftp://ftp.myftpadress.fr/dev/M2Repo/</url>
        <layout>default</layout>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
<distributionManagement>
    <repository>
        <id>myrepo</id>
        <name>my Maven Repository</name>
        <url>ftp://ftp.myftpadress.fr/dev/M2Repo/</url>
        <uniqueVersion>false</uniqueVersion>
    </repository>
    <snapshotRepository>
        <id>myrepo</id>
        <name>my Maven Repository</name>
        <url>ftp://ftp.myftpadress.fr/dev/M2Repo/</url>
        <uniqueVersion>false</uniqueVersion>
    </snapshotRepository>
</distributionManagement>

我在settings.xml中也有所需的信息,这是可以的,因为工件部署工作。

<servers>
    <server>
        <id>myrepo</id>
        <username>myuser</username>
        <password>mypassword</password>
    </server>
</servers>

我使用以下maven

提前多谢!新年快乐。。。

共有1个答案

裴俊能
2023-03-14

我觉得你做不到。Maven通过HTTP解决其依赖关系。您可以通过FTP、SCP、HTTP和DAV等不同协议上传它们,但它可以通过HTTP/HTTPS解析它们。

 类似资料:
  • 我希望将Groovy支持添加到现有的java项目中,这样我就可以使用invokedynamic轻松地编译java和Groovy的混合代码,这样我就可以获得类似java的执行速度,而无需在冗长的java语法上浪费过多的时间 在读到gmaven插件不再支持编译,groovy eclipse编译器插件还不支持invokedynamic之后,我问自己,如果Maven编译的groovy代码速度太慢了,为什么

  • 我制作了一个EJB3.0和一个客户机。这是我的EJB的pom: 但是无法检索jboss-ejb3-ext-api及其实现:/eclipse告诉我: 容器“Maven Dependencies”引用不存在的库“C:\usr\local\m2-repository\org\jboss\ejb3\jboss-ejb3-ext-api\1.0.0\jboss-ejb3-ext-api-1.0.0.jar”

  • 一个月前,我可以在IntelliJ的基础上从头开始成功地构建Java应用程序,现在,我必须升级spring boot以获得一些新功能。但是,在我将spring boot的版本从2.2.2更改之后。发布到其他版本,然后单击“重新加载所有Maven项目”按钮,我会收到以下消息: 一个月前下载2.2.2还可以。释放。为什么此时更新失败?我的信息如下:MacOS 12.2,捆绑(Maven 3),Java

  • 问题内容: 当我输入command go build时,我有一个项目具有来自bitbucket上私人存储库的多个依赖项。我得到这个错误 无法识别的导入路径“ bitbucket.xxx.xx / xx / x” x509:证书由未知授权机构签名 我已经尝试了几种方法,例如添加令牌 git config –global http.extraheader令牌 配置为ssh git config –gl

  • 我有两个私人JFrog存储库设置。一个存储库处理发布,另一个处理快照。下面是我如何在我的设置中定义它的。xml文件。 我的多模块maven项目中的多个内部依赖项都收到了这个错误: 从外观上看,Maven似乎并没有试图联系官方的Maven Central repo以获取这些依赖项,而是在我的私有存储库上失败了。我的印象是,如果私有存储库不包含特定工件,它将尝试联系Maven Central。 从Ma

  • 我试图在OSGI容器上部署我的java模块。通过karaf“feature”,我能够生成feature.xml,它列出了所有需要的包。 正如我们所知,每个包都是一个依赖项。现在我们确实有一些依赖项可以由maven从其存储库中下载。