Анализ зависимости зависимости как пом - PullRequest
0 голосов
/ 11 января 2019

Предположим, мы создаем проект, который является своего рода библиотечным проектом (проект объединяет зависимости).


    <project>
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.packt</groupId>
      <artifactId>axis2-client</artifactId>
      <version>1.0.0</version>
      <packaging>pom</packaging>
      <dependencies>
        <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2-kernel</artifactId>
          <version>1.6.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2-adb</artifactId>
          <version>1.6.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2-transport-http</artifactId>
          <version>1.6.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2-transport-local</artifactId>
          <version>1.6.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.axis2</groupId>
          <artifactId>axis2-xmlbeans</artifactId>
          <version>1.6.2</version>
        </dependency>
      </dependencies>
    </project>

Другой проект использует проект библиотеки в качестве зависимости.


    <project>
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.packt</groupId>
      <artifactId>my-axis2-client</artifactId>
      <version>1.0.0</version>

      <dependencies>
        <dependency>
          <groupId>com.packt</groupId>
          <artifactId>axis2-client</artifactId>
          <version>1.0.0</version>
          <type>pom<type>
        </dependency>
      </dependencies>
    </project>

Я думаю, что в этом сценарии использования предполагается, что my-axis2-client использует зависимости в axis2-client в качестве прямой зависимости. Таким образом, это означает, что я могу использовать, скажем, org.apache.axis2.client.ServiceClient (в axis2-kernel-1.6.2.jar) класс в my-axis2-client. Однако, когда я запускаю mvn dependency:anlyze, он генерирует следующий результат.


    [WARNING] Used undeclared dependencies found:
    [WARNING]     org.apache.axis2:axis2-kernal:jar:1.6.2:compile
    [WARNING] Unused declared dependencies found:
    [WARNING]     compackt:axis2-client:pom:1.0.0:compile

Не думаю, что это действительное предупреждение. Пожалуйста, дайте мне знать, если есть какой-либо способ анализа зависимостей в этом случае.

1 Ответ

0 голосов
/ 11 января 2019

В вашей конструкции получающиеся зависимости переходные , а не прямые. Вы зависите от POM, который сам зависит от банок.

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