wake-up-neo.com

Automatische Konfiguration einer DataSource fehlgeschlagen: 'spring.datasource.url' wurde nicht angegeben

Ich habe eine grundlegende Spring-Boot-Anwendung aus SPRING INITIALIZR mit den Abhängigkeiten von Web, MongoDB und JPA erstellt. 

Wenn ich versuche, die Spring Boot-Anwendung auszuführen, erhalte ich die folgende Ausnahme:

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2018-03-25 16:27:02.807 ERROR 16256 --- [  restartedMain] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************
Description:
Failed to auto-configure a DataSource: 'spring.datasource.url' is not specified and no embedded datasource could be auto-configured.
Reason: Failed to determine a suitable driver class

Action:

Consider the following situation:
If you want an embedded database like H2, HSQL or Derby, please add it in the Classpath.
If you have database settings to be loaded from a particular profile you may need to activate it since no profiles were currently active.

In der Datei application.properties habe ich folgende Konfiguration:

server.port=8081
spring.data.mongodb.database=TestDatabase
spring.data.mongodb.Host=localhost
spring.data.mongodb.port=27017

Versionen die ich verwende: Spring: 5.0.4, MongoDB: 3.6, Spring Boot: 2.0

33
Subash J

Da Sie in Ihre Datei pom.xml sowohl mongodb- als auch data-jpa-Abhängigkeiten hinzugefügt haben, wurde ein Abhängigkeitskonflikt wie folgt erstellt

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

Entfernen Sie die jpa-Abhängigkeit und führen Sie sie aus. Es sollte gut funktionieren.

63
Bhabadyuti Bal

Wechseln Sie in den Ressourcenordner, in dem sich die Datei application.properties befindet, und aktualisieren Sie den folgenden Code.

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
31

Fügen Sie die folgende Zeile in application.properties file im Ressourcenordner ein und starten Sie Ihre Anwendung erneut.

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
16
bikram sahoo

Anscheinend fehlt der MongoDB-Treiber. Fügen Sie die folgende Abhängigkeit zu pom.xml hinzu:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
2
Nikolas

ihre auf Daten basierende Abhängigkeit versucht, die jeweiligen Entitäten zu finden, die noch nicht erstellt wurden, kommentiert die Abhängigkeiten basierend auf Daten und führt die App erneut aus.

<!-- <dependency> -->
        <!-- <groupId>org.springframework.boot</groupId> -->
        <!-- <artifactId>spring-boot-starter-data-jpa</artifactId> -->
        <!-- </dependency> -->

Dieser Fehler trat auf, wenn Sie JPA-Abhängigkeiten in Ihre Spring-Boot-Konfigurationsdatei einfügen, wie in Maven oder Gradle . Die Lösung ist: Spring-Boot-Dokumentation

Sie müssen die DB-Verbindungszeichenfolge und die Treiberdetails in der Datei application.properties angeben. Dadurch wird das Problem gelöst. Dies könnte jemandem helfen.

1
Atul

Fügen Sie Ihre Abhängigkeiten wie mongodb, web, jpa hinzu. Lösche/lösche die Reste.

<dependencies>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
  </dependency>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
</dependencies>
0
CHANDU DIATOZ

In gradle build habe ich einfach:

compile('org.springframework.boot:spring-boot-starter-data-jpa') compile('org.springframework.boot:spring-boot-starter-security') compile('org.springframework.boot:spring-boot-starter-web') compile('org.springframework.boot:spring-boot-devtools')

entfernt

**`compile('org.springframework.boot:spring-boot-starter-data-jpa')`**

und es hat für mich funktioniert.

0
ngPranav

Ich bin auf dieses Problem gestoßen, als ich einfach meine jdbc-URL in application.properties falsch eingegeben habe. Hoffe das hilft jemandem: vorher:

spring.datasource.url=jdbc://localhost:3306/test

nach:

spring.datasource.url=jdbc:mysql://localhost:3306/test
0