Maven Вопросы обучения - PullRequest
       8

Maven Вопросы обучения

1 голос
/ 02 октября 2011

В Eclipse я установил плагин m2e. Я пытаюсь понять, как вы знаете имена свойств для зависимостей, чтобы добавить в файл pom?

Скажите, например, как узнать, какой идентификатор артефакта использовать?

<dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>${org.aspectj-version}</version>                   
</dependency>   

Зачем здесь говорить aspectjrt в идентификаторе артефакта?

<dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>1</version>
    </dependency>

а здесь же как идентификатор группы ?? есть ли образец?

говорят, что мой проект отсутствует

org.hibernate.Query;
org.hibernate.Session;
org.hibernate.SessionFactory;

и в папке maven зависимостей у меня есть hibernate-core-3.6.0.Final.jar, который эффективно содержит все кроме тех 3.

Вы сами пишете эти .pom?

Бьюсь об заклад, что для студенческого проекта мне придется придерживаться ручного добавления сотен библиотек ... в противном случае я не смогу выучить его :-)

1 Ответ

3 голосов
/ 02 октября 2011
  1. Вы знаете, какой groupId: artifactId: version (мы называем эти координаты) использовать, какой артефакт вы хотите.Чаще всего вы можете узнать, какой артефакт вы хотите, прочитав его в документации проекта, особенно для проектов с большим количеством артефактов, некоторые из которых могут содержать необязательные дополнения.
  2. aspectjrt - сокращение от AspectJ RunTime.
  3. GroupId и artifactId определяются создателями рассматриваемой библиотеки.Универсального паттерна нет, потому что нет единого центрального координатора.Есть некоторые соглашения, которые развились, все же.Как правило, groupId является, по крайней мере, частично обратным доменным именем, как и первая часть имени пакета Java: org.hibernate, org.apache, org.springframework ... ArtifactId четко определяет роль этого конкретного артефакта вгруппе, к которой он принадлежит, например spring-core, spring-tx, spring-jms и т. д. Вы можете получить представление о том, как выглядят groupId и artifactId, выполнив поиск в Maven Central для некоторых известных вам библиотек.
  4. Если вам не хватает org.hibernate.SessionFactory, значит, у вас нет hibernate-core-3.6.0.Final на вашем пути к классам.Если у вас есть это на вашем пути к классам, то вы не пропустите класс SessionFactory.Те три класса, которые вы упомянули, наиболее определенно относятся к этому артефакту, как вы можете видеть из поиска класса в Central .Если вы все еще сомневаетесь, сделайте jar -tf hibernate-core-3.6.0.Final.jar и проверьте содержимое самостоятельно.Я обещаю, что у него есть эти классы.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...