Maven проблема с неверным файлом JAR, который на самом деле HTML - PullRequest
3 голосов
/ 19 марта 2010

Недавно я столкнулся с проблемой в моей сборке maven, которая загружает файл jar для javamail-1.4.jar или чего-то еще, но оказывается, что файл не является настоящим файлом jar, это фактически ссылка на то, где взять правильную банку.

похоже репо изменилось для этого. но в моей обстановке в мавене все должно идти в наш внутренний репо, я не знаю, как это случилось. но в любом случае, что более важно, как я могу исправить эту проблему, чтобы она загружала правильный файл jar при новой установке?

спасибо!

1 Ответ

1 голос
/ 19 марта 2010

Вы либо загрузили эту флягу перед настройкой settings.xml для использования корпоративного репозитория ~, либо ~ корпоративный репозиторий содержит версию, которая у вас есть. Итак, сначала проверьте , что на самом деле содержит внутренний репозиторий (если артефакт javamail не является ожидаемым, затем загрузите его и установите в своем внутреннем репо). Затем удалите артефакт из локального репозитория, чтобы повторно загрузить его.

Обновление: Насколько я понимаю, вы получаете эту зависимость транзитивно из log4j, поэтому вы должны использовать log4j 1.2.15. Чтобы решить эту проблему, либо установите отсутствующую зависимость в вашем внутреннем репозитории, либо вернитесь к log4j 1.2.14, либо исключите транзитивные зависимости из log4j 1.2.15:

<dependency>
  <groupId>log4j</groupId>
  <artifactId>log4j</artifactId>
  <version>1.2.15</version>
  <exclusions>
    <exclusion>
      <groupId>javax.mail</groupId>
      <artifactId>mail</artifactId>
    </exclusion>
    <exclusion>
      <groupId>javax.jms</groupId>
      <artifactId>jms</artifactId>
    </exclusion>
    <exclusion>
      <groupId>com.sun.jdmk</groupId>
      <artifactId>jmxtools</artifactId>
    </exclusion>
    <exclusion>
      <groupId>com.sun.jmx</groupId>
      <artifactId>jmxri</artifactId>
    </exclusion>
  </exclusions>
</dependency>
...