IntelliJ - преобразовать проект/модуль Java в проект/модуль Maven

У меня есть проект на Bitbucket. Исключаются только источники. Чтобы получить проект на новом компьютере, я использовал Control Version > Checkout из Control Version из IntelliJ.

Затем он спрашивает, хочу ли я создать новый проект из этого источника, на который я отвечаю "Да". Все идет нормально. Он создает для меня небольшой проект Java, состоящий из одного модуля.

Тем не менее, моя цель по привлечению этого проекта в IntelliJ заключалась в том, чтобы превратить его в проект Maven. Я не могу найти какой-либо вариант в любом месте, что позволит мне это сделать!

Есть ли способ заставить IntelliJ генерировать базовый пустой pom.xml для меня с именем и артефактом и репозиторием? Или, есть ли способ импортировать проект в качестве проекта Maven в первую очередь? (Всякий раз, когда я пытаюсь создать проект из существующего источника, он дает мне только вариант проекта Java.)

Ответ 1

Щелкните правой кнопкой мыши модуль, выберите "Добавить поддержку фреймворка..." и проверьте технологию "Maven".

(Это также создает pom.xml для изменения.)

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

Pre-IntelliJ 13 это не преобразует проект в Maven Standard Directory Layout, 13+ он будет.

Ответ 2

Визуальный для тех, кто пользуется им.

введите описание изображения здесь

После щелчка правой кнопкой мыши по имени проекта ( "test" в этом примере) выберите "Добавить поддержку фреймворка" и установите флажок "Maven".

Ответ 3

  • Откройте "Проекты Maven" (вкладка с правой стороны).
  • Используйте 'Добавить проекты Maven'
  • Найдите свой pom.xml

Ответ 4

Я хочу добавить важный намек на то, что преобразование такого проекта может иметь побочные эффекты, которые заметны, когда у вас есть более крупный проект. Это связано с тем, что Intellij Idea (2017) принимает некоторые важные настройки только из pom.xml, что может привести к некоторой путанице, по крайней мере затронутые разделы:

  • Настройки аннотации изменены для модулей
  • Выходной путь компилятора изменяется для модулей
  • Настройки ресурсов полностью игнорируются и берутся только из pom.xml
  • Зависимости модулей перепутаны и должны быть отмечены
  • Настройки языка/кодировки изменены для модулей

Все эти моменты нуждаются в пересмотре и настройке, но после этого он работает как шарм.

Более того, к сожалению, не существует достаточного шаблона 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>Name</groupId>
<artifactId>Artifact</artifactId>
<version>4.0</version>
<properties>
    <!-- Generic properties -->
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencies>
    <!--All dependencies to put here, including module dependencies-->
</dependencies>
<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/java</directory>
            <excludes>
                <exclude>**/*.java</exclude>
            </excludes>
        </resource>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
            <includes>
                <include>*</include>
            </includes>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.5.1</version>
            <configuration>
                <annotationProcessors/>
                <source>${java.version}</source>
                <target>${java.version}</target>
            </configuration>
        </plugin>
    </plugins>
</build>

Ответ 5

Это исправлено для меня: Откройте вкладку проектов maven справа. Добавьте pom, если он еще не появился, затем нажмите "Обновить" в левом верхнем углу вкладки.

Ответ 6

У меня был другой сценарий, но все-таки приземлился на этот ответ.
Я импортировал свою корневую папку проекта, содержащую несколько проектов Maven, но также некоторые другие вещи, используемые в этом проекте.
IntelliJ распознал файлы Java, но не разрешил зависимости Maven.

Я исправил это, выполнив щелчок правой кнопкой мыши на каждом POM, а затем "Добавить как проект Maven"

Ответ 7

Я решил эту проблему, выполнив следующие шаги:

  1. Файл> Закрыть проект

  2. Импортировать проект

  3. Выберите свой проект через всплывающее окно системных файлов

  4. Установите флажок "Импортировать проект из внешней модели" и выберите запись Maven.

  5. И несколько кнопок Next (выберите JDK,...)

Затем проект будет импортирован как модуль Maven.

Ответ 8

Самый простой способ - добавить проект как проект Maven напрямую. Для этого в проводнике проекта слева щелкните правой кнопкой мыши файл POM для проекта, в нижней части контекстного меню вы увидите параметр "Добавить как проект Maven", щелкните его. Это автоматически преобразует проект в проект Maven