首页 > 解决方案 > 我在哪里可以找到 org.apache.maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon 类?

问题描述

我正在研究如何 maven 下载依赖,我使用mvn clean compile和使用 IDEA 调试功能来跟踪代码。

断点是org.apache.maven.wagon.StreamWagonL126

这是按 F7 后的堆栈

fillInputData:1094, AbstractHttpClientWagon (org.apache.maven.wagon.providers.http.wagon.shared)
getInputStream:126, StreamWagon (org.apache.maven.wagon)
getIfNewer:88, StreamWagon (org.apache.maven.wagon)
get:61, StreamWagon (org.apache.maven.wagon)
...

而且我在任何地方都找不到org.apache.maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon课程。

这是我目前的依赖。

    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-compat</artifactId>
      <version>3.6.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-core</artifactId>
      <version>3.6.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-http</artifactId>
      <version>3.3.2</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-http-shared</artifactId>
      <version>3.3.2</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-http-lightweight</artifactId>
      <version>3.3.2</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-provider-api</artifactId>
      <version>3.3.2</version>
    </dependency>

    <dependency>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.8.0</version>
    </dependency>

我只从 中找到同名org.apache.maven.wagon.shared.http.AbstractHttpClientWagonwagon-http-shared,但包名不同。

编辑:我使用 maven 3.6.1 IDEA 2019.3.3 捆绑版

标签: javamaven

解决方案


您正在搜索的类包含在 maven 的安装目录中。

完整路径是

MAVEN_INSTALLATION_DIR/lib/wagon-http-$VERSION-shaded.jar

请注意,这$VERSION取决于您安装的 Maven 版本。

编辑:类源代码可以在这里找到。您在评论中声明源和 jar 的类包不同。这部分正确,但这可以通过检查工件wagon-providers 工件的 pom.xml来解释。

特别是你应该检查Maven-shade-plugin 的配置。

这里工件wagon-http-shared包含在构建过​​程中,这里它在生成的 jar 中的包被更改。


推荐阅读