Maven: Где будет код? - PullRequest
       25

Maven: Где будет код?

1 голос
/ 27 апреля 2010

Привет,

Может кто-нибудь сказать мне, как, черт возьми, я должен использовать репозиторий Maven или как там термин с проектом?

Я скачал библиотеку OAuth с Google. Я запускаю mvn compile, тестирую, устанавливаю, развертываю

Я хочу знать, куда уходит баночка, чтобы я мог просто поместить ее в свой класс. Любая помощь приветствуется!

Ответы [ 5 ]

7 голосов
/ 27 апреля 2010

Может кто-нибудь сказать мне, как, черт возьми, я должен использовать репозиторий Maven или как там термин с проектом? Я скачал библиотеку OAuth из Google (...). Я хочу знать, куда движется Jar, чтобы я мог просто поместить его в свой путь к классу. Любая помощь приветствуется!

По сути, то, что вам нужно сделать с Maven, чтобы "поместить библиотеку в путь к классам" * - это объявить эту библиотеку как зависимость проекта Maven. Давайте посмотрим, как это сделать и как начать здесь.

Во-первых, вам нужно создать проект Maven (то есть каталог, содержащий pom.xml, используемый для описания вашего проекта и следования заданной структуре). Maven предоставляет инструмент, который может создать проект для вас, вам просто нужно выполнить следующую команду (где artifactId - это имя вашего проекта):

mvn archetype:generate -DgroupId=com.stackoverflow -DartifactId=Q2722892 -Dversion=1.0-SNAPSHOT -DinteractiveMode=false

Затем cd войдите в каталог проекта и отредактируйте pom.xml в , объявите репозиторий oauth (Maven имеет центральный удаленный репозиторий , называемый central , который известен по умолчанию, но oauth недоступен в central, поэтому вам нужно указать Maven, где его найти):

<project>
  ...
  <repositories>
    <repository>
      <id>oauth.googlecode.com</id>
      <url>http://oauth.googlecode.com/svn/code/maven</url>
    </repository>
  </repositories>
</project>

Теперь вы можете объявить зависимость от aouth артефакта (или любого другого артефакта, который вы хотите получить из репозитория oauth):

<project>
  ...
  <dependencies>
    <dependency>
      <groupId>net.oauth.core</groupId>
      <artifactId>oauth</artifactId>
      <version>20090825</version>
    </dependency>
    ...
  </dependencies>
</project>

Теперь вы можете использовать библиотеку oauth в коде под src/main/java, библиотека oauth находится на пути к классам.

Чтобы построить свой проект, запустите install (это будет немного больше, чем компиляция, запуск тестов, упаковка, но это моя рекомендация):

mvn install

И найдите банку вашего проекта в каталоге target.

Если честно, этот конкретный пример не самый легкий для начала работы с Maven, потому что он требует понимания нескольких концепций, которые не могут быть рассмотрены в одном ответе, и я настоятельно рекомендую проверить Maven by Example за хорошее знакомство с Maven, прежде чем идти дальше.

6 голосов
/ 27 апреля 2010

JAR существует в папке $ MAVEN_PROJECT / target.

Копия также помещается в локальный репозиторий по адресу $ HOME / .m2 / repository.

0 голосов
/ 27 апреля 2010

(при условии, что вы имеете в виду «куда поместить библиотеку клятвы?») Похоже, что в этом проекте уже есть хранилище . вы можете вставить это в раздел репозитории в pom.xml вашего проекта.

0 голосов
/ 27 апреля 2010

Должен быть в вашем HOME_DIRECTORY / .m2 / хранилище. Посмотрите на файл settings.xml в папке .m2. Должен быть такой тег:

<localRepository>${user.home}/.m2/repository</localRepository>

Там написано, где хранятся банки. НТН

0 голосов
/ 27 апреля 2010

Если вы используете maven для создания своего проекта, вам просто нужно добавить jar в качестве зависимости в вашем POM.xml. maven автоматически ищет в локальном (.m2 / repository) хранилище все зависимости. Если он не находит его, он пытается загрузить файл из central (онлайн-представитель maven по умолчанию) или из любого другого указанного вами хранилища. Вам не нужно ничего добавлять в classpath.

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