2015-12-04 3 views
0

Я новичок в IntelliJ и Maven и немного поработал. Я импортировал некоторые библиотеки через модуль & Параметры структуры проекта в окне «Структура проекта» (см. Снимок экрана ниже), потому что я думал, что мне нужно добавить сюда свои зависимости. Я также подумал, что это автоматически создает pom.xml с списком зависимостей, но это не так! Я должен добавить свои зависимости с помощью следующих шагов:Intellij IDEA Maven Plugin - Управление зависимостями

Open the pom.xml file > Menu "Code" > "Generate" > Popup "Dependency" 

или по

Alt + Вставка

Структура проекта Окно:

enter image description here

Чтобы экспортировать все моим библиотекам я также должен был объявить да плагин в pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 

<groupId>test</groupId> 
<artifactId>test</artifactId> 
<version>1.0-SNAPSHOT</version> 

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-assembly-plugin</artifactId> 
      <configuration> 
       <archive> 
        <manifest> 
         <mainClass>your.package.MainClass</mainClass> 
        </manifest> 
       </archive> 
       <descriptorRefs> 
        <descriptorRef>jar-with-dependencies</descriptorRef> 
       </descriptorRefs> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

<dependencies> 
    <dependency> 

     [...] 

    </dependency> 
</dependencies> 

и поставил перед собой цель с помощью конфигурации запуска для

clean compile assembly:single package 

Это создало меня работает две банки:

test-1.0-SNAPSHOT.jar & test-1.0-SNAPSHOT-jar-with-dependencies.jar 

Это было много чего сделать для новичка! Мой вопрос сейчас: есть ли более короткий способ управлять зависимостями проекта? И какова структура проекта действительно для (в случае управления зависимостями) ??? Я сделал слишком много или что-то не так?

PS: Для всех, кто новичок в Maven & IntelliJ см https://www.jetbrains.com/idea/help/maven.html

+1

Я всегда добавляю зависимости непосредственно в файл pom.xml. Я просто не доверяю Intellij достаточно, я думаю, – uzilan

+0

Да, это тоже мое фактическое мнение ... Мне кажется, что это странно для меня как новичок, что я могу добавить туда некоторые зависимости, но эти настройки не будут иметь эффекта для pom. xml-файл, так как @Kuroro сказал ... –

ответ

1

Если вы используете Maven вы просто должны добавить свои зависимости от pom.xml.

Вы также можете использовать

Open the pom.xml file > Menu "Code" > "Generate" > Popup "Dependency" 

Как вы делаете. InteliJ автоматически добавит его в путь к классам вашего проекта.

Структура проекта используется, например, когда у вас есть подмодуль. Это не для того, чтобы добавить банку.

+0

Но почему я могу добавить туда зависимости? И установите их возможности для предоставления/компиляции и т. Д. ... –

+1

Потому что «модуль структуры проекта» не создан, чтобы добавить maven jar. Здесь для конфигурации каждого модуля (aka project in eclipse). Чтобы добавить зависимости maven, вы должны добавить их в свой pom.xml (с нуля или с кодом меню). Вы также можете указать область в pom.xml с помощью . Кстати автозаполнение в pom.xml – fabballe

+0

Благодарим за быстрый ответ!Я правильно понял, что «структура проекта» предназначена для управления библиотеками, которые проект должен «знать», но не имеет никакого отношения к экспорту библиотек при создании баннеров через maven? –