Я провел последние два дня, пытаясь заставить Spring Boot работать. Тем не менее, я не смог получить совершенно новый, чистый проект для запуска IntelliJ Idea.Весенняя загрузка «Не удалось создать конфигурацию».
Вот что я делаю:
- Открыть IntelliJ Idea
- Создать новый проект с Spring Initializr с безопасностью зависимостей, Web, отдых Хранилищем, JPA, H2 и приводом.
- Запустите файл Java под названием Application.java
- Получить this output.
- (╯ ° □ °) ╯(┻━┻
Вот мой 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.aroid</groupId>
<artifactId>restserver</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>AroidRESTServer</name>
<description>Aroid REST Server</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!-- Start what I added -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>2.2.4</version>
</dependency>
<!-- End what I added -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot</artifactId>
<version>1.2.7.RELEASE</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Примечание: У меня есть раздел в зависимости, где я маркировать вещи, которые я добавлены вручную. Это те вещи, которые Spring Initializr автоматически не добавляет (и должен иметь), поэтому мне нужно было добавить их вручную, чтобы запустить проект.
Я считаю, что проблема связана с моей идеей IntelliJ setup, sinc e запуск нового проекта в STS (Spring Tool Suite) работает нормально.
Некоторые другие вещи, которые я пробовал, и все еще получаю тот же результат:
- Использование веб-версии Spring Initializr.
- Создание нового проекта Spring Boot без каких-либо библиотек
- Загрузка примеров проектов и их запуск.
- Добавление зависимостей, которые имеют эту библиотеку вручную через Maven.
- Создание проекта в STS и его импорт в IntelliJ Idea.
- В основном что-либо в пределах первых десяти страниц результатов поиска Google по проблеме.
Любая помощь была бы весьма полезной.
Спасибо, Натан
Никогда не STS, но это кажется странным, что зависимости Tomcat/EE предоставляется. AFAIK они должны быть предоставлены при развертывании вашего приложения в качестве WAR для Tomcat. Когда вы запускаете его с помощью основного метода Application, они должны компилироваться. –
Я хотел бы вам помочь, но я не могу открыть ваш вывод, потому что моя компания блокирует этот URL. Поэтому, пожалуйста, добавьте соответствующий вывод в свой пост. – dunni
И что заставляет вас думать, что Spring Initializr должен добавить API Java EE? Это называется Spring Initializr, а не Java EE Initializr. – dunni