Где я могу найти орг. apache .maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon класс? - PullRequest
0 голосов
/ 06 марта 2020

Я изучаю, как Maven загружает зависимость, я использую mvn clean compile и использую функцию отладки IDEA для трассировки кода.

точка останова равна org.apache.maven.wagon.StreamWagon L126

вот стек после нажатия 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.AbstractHttpClientWagon класс из wagon-http-shared, но имя пакета другое.

РЕДАКТИРОВАТЬ : я использую версию maven 3.6.1 IDEA 2019.3.3 в комплекте

1 Ответ

1 голос
/ 06 марта 2020

Класс, который вы ищете, находится в каталоге установки maven.

Полный путь

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

Обратите внимание, что $VERSION зависит от версии Maven, которую вы установили.

Редактировать: Исходный код классов можно найти здесь . В комментариях вы указали, что пакет с исходным кодом и файлом jar различается. Это частично верно, но это объясняется проверкой артефактов pom артефакта провайдеров-универсалов. xml.

Особенно стоит проверить конфигурацию Maven-shade-plugin .

Здесь артефакт wagon-http-shared включен в процесс сборки, а здесь его упаковка в изготовленном банке изменена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...