Запуск проекта Spring Boot Microservices Maven


Создайте родительский модуль

  1. Откройте терминал, перейдите в место, где вы хотите создать проект, и выполните следующую команду:
mvn archetype:generate -DgroupId=[GROUP_ID(ie com.nutsnet)] -DartifactId=[ARTIFACT_ID(ie nutsnetservices)] -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

Войти в полноэкранный режим Выйти из полноэкранного режима
  1. Откройте IntelliJ, откройте созданный проект. Затем перейдите в File > Project Structure, чтобы убедиться, что версия Java та, которая вам нужна.

  2. Удалите папку src, которая автоматически генерируется maven. Поскольку здесь находится родительский каталог нашего проекта, мы будем создавать наши микросервисы в этом родительском каталоге.

  3. Откройте pom.xml. Задайте url сайта проекта и версию компиляции java.

Избавьтесь от всех исходных зависимостей и плагинов, и, наконец, наш файл pom.xml будет выглядеть следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<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>com.test</groupId>
  <artifactId>testservices</artifactId>
  <version>1.0-SNAPSHOT</version>

  <name>testservices</name>
  <url>http://www.test.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
  </properties>

  <dependencyManagement>
    <dependencies>
    </dependencies>
  </dependencyManagement>

  <dependencies>

  </dependencies>

  <build>
    <pluginManagement>
      <plugins>

      </plugins>
    </pluginManagement>
  </build>
</project>

Вход в полноэкранный режим Выйти из полноэкранного режима
  1. Теперь давайте начнем добавлять нужные нам зависимости и плагины.
  • Для тега dependencyManagement добавьте spring-boot-dependencies.

  • Для тега dependencies нам нужны lombok и spring-boot-starter-test.

  • Для тега pluginManagement добавьте spring-boot-maven-plugin.

<?xml version="1.0" encoding="UTF-8"?>
<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>com.test</groupId>
  <artifactId>testservices</artifactId>
  <version>1.0-SNAPSHOT</version>

  <name>testservices</name>
  <url>https://www.test.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <spring.boot.maven.plugin.version>2.5.7</spring.boot.maven.plugin.version>
    <spring.boot.dependencies.version>2.5.7</spring.boot.dependencies.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring.boot.dependencies.version}</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
    </dependency>
  </dependencies>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <version>${spring.boot.maven.plugin.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

Вход в полноэкранный режим Выйдите из полноэкранного режима
  1. Нажмите кнопку reload maven project.

Мы видим, что зависимости и плагины успешно загружены.

Создание микросервисов

  1. Щелкните правой кнопкой мыши на родительском модуле > new > Module….

  2. Нажмите кнопку New Module, введите имя модуля (сервиса), выберите версию JDK и родительский модуль. Затем нажмите кнопку Create.

    Теперь в pom.xml родительского модуля мы видим, что созданный подмодуль (сервис) находится в теге module.

В pom.xml подмодуля мы также можем увидеть родительский тег, определяющий его родительский модуль, и тег artifactId подмодуля.

  1. Добавьте spring-boot-starter-web к подмодулю и нажмите кнопку reload maven project.
   <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
Вход в полноэкранный режим Выйдите из полноэкранного режима
  1. Создайте главный класс.

  2. Создайте файл application.yml.

  3. Давайте создадим баннер Spring Boot. (Необязательно)
    Перейдите на https://devops.datenkollektiv.de/banner.txt/index.html и скопируйте сгенерированный текст баннера.
    Вернитесь в IntelliJ, создайте файл banner.txt и вставьте текст баннера.

  4. Запустите приложение Spring Boot. Теперь наш первый сервис успешно запущен!
    Мы можем продолжать добавлять другие сервисы, подобные этому первому сервису.

Оцените статью
Procodings.ru
Добавить комментарий