Как мне обновить maven.xml до pom.xml? - PullRequest
2 голосов
/ 25 января 2012

Я работаю с веткой 1.14.4 Heritrix и, к сожалению, на данный момент я застрял в этой ветке ... Проблема, с которой я сталкиваюсь, заключается в том, что ее maven.xml зависит на Maven 1.1, который так стар, у меня были проблемы даже с поиском зависимостей, чтобы заставить его строить.

Более того, поскольку это файл maven.xml, а не pom.xml, никакая достаточно старая или последняя среда IDE не может загрузить проект - я должен собрать его вручную, запустив скрипт 'maven'.

Я свободно признаю, что совершенно невежественен в том, что касается Java и maven, но наверняка кто-то должен иметь некоторые советы о том, как я мог бы перейти на более новую версию Maven.

Помоги мне, Оби-Ван! Ты моя единственная надежда!

Неловкое обновление через 5 минут ..

Потратив на это 3 часа, я наткнулся на ответ здесь

  • Установить maven2
  • cd project_dir
  • mvn one: конвертировать (автоматически конвертирует 1.x в 2.x)
  • mvn3 предположительно обратно совместим .. Так что мне пора идти!

Пару часов спустя .. реальность наступает ..

Обновление до maven-2 или maven-3 привело к появлению новых новых модулей, которые совершенно не соответствуют тому, что было добавлено из моего maven.xml в pom.xml. Кроме того, pom.xml для «проекта» не существует, что тоже кажется немного загвоздкой.

Так что, если я хочу играть таким образом, я должен играть на замке - обновить мои модули, отформатировать все, как будто это новый проект. Техника обновления дала мне немного пути, но я думаю, что это займет некоторое время ... Принятие Тима быстрого и подробного ответа, еще раз спасибо. Я понимаю, что «ребята, Хай, заставляют Мэйвена работать на меня?» это как просить кого-то исправить твой make-файл. : D

1 Ответ

1 голос
/ 25 января 2012

Ну, есть официальное руководство для такого рода вещей, но вот быстрый старт.

Начните с минимального POM:

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1</version>
</project>

Самый простой (хотя и не обязательный) шаг - убедиться, что проект имеет структуру каталогов Maven 2 по умолчанию .

По существу, просто:

src/main/java              - your java files, e.g. /com/mycompany/...
src/main/resources         - other dependencies (e.g. xml files)

После этого вы сможетезагрузить этот пустой проект в IDE как допустимый проект Maven 2.

Однако он будет полон ошибок, поскольку вы еще не указали зависимости.Теперь у вас есть два варианта:

1) Добавить зависимости в POM вручную.Например:

<project>
...
<dependencies>
    <dependency>
      <groupId>commons-math</groupId>
      <artifactId>commons-math</artifactId>
      <version>1.2</version>
      <type>jar</type>
    </dependency>
</dependencies>
...
</project>

2) Или используйте интегрированную среду разработки, чтобы получить необходимые зависимости.В зависимости от вашей среды IDE это может быть значительно проще, поскольку она может предложить возможность автоматического поиска в центральном Maven нужной библиотеки, и вы сможете легко загрузить последнюю версию.Например, NetBeans предоставит всплывающую подсказку слева от строки кода, где отсутствует определение класса, которое позволяет вам искать в Maven зависимость.

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