Printemps de Démarrage Ne peut pas déterminer de base de données intégré de la classe du pilote de base de données, tapez AUCUNE
C'est l'erreur qui est générée lors de l'exécution de mon application web:
[INFO] WARNING: Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.sql.DataSource org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.dataSource; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration$NonEmbeddedConfiguration.class]: Instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public javax.sql.DataSource org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$NonEmbeddedConfiguration.dataSource()] threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath.:
[INFO] org.springframework.beans.factory.BeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath.
[INFO] at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.getDriverClassName(DataSourceProperties.java:91)
[INFO] at org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$NonEmbeddedConfiguration.dataSource(DataSourceAutoConfiguration.java:100)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[INFO] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] at java.lang.reflect.Method.invoke(Method.java:606)
[INFO] at com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java:115)
[INFO] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:166)
[INFO] at org.springframework.beans.factory.support.ConstructorResolver$3.run(ConstructorResolver.java:580)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:577)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1094)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:989)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
[INFO] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
[INFO] at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1017)
[INFO] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:960)
[INFO] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:858)
[INFO] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:480)
[INFO] at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
[INFO] at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:289)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1185)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
[INFO] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
[INFO] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:370)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1094)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:989)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
[INFO] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
[INFO] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
[INFO] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
[INFO] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:973)
[INFO] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:750)
[INFO] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)
[INFO] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:683)
[INFO] at org.springframework.boot.SpringApplication.run(SpringApplication.java:313)
[INFO] at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:142)
[INFO] at org.springframework.boot.legacy.context.web.SpringBootContextLoaderListener.initWebApplicationContext(SpringBootContextLoaderListener.java:60)
[INFO] at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
[INFO] at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)
[INFO] at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
[INFO] at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
[INFO] at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
[INFO] at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
[INFO] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
[INFO] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
[INFO] at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
[INFO] at org.mortbay.jetty.Server.doStart(Server.java:224)
[INFO] at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
[INFO] at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:249)
[INFO] at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:306)
[INFO] at com.google.appengine.tools.development.AutomaticInstanceHolder.startUp(AutomaticInstanceHolder.java:26)
[INFO] at com.google.appengine.tools.development.AbstractModule.startup(AbstractModule.java:79)
[INFO] at com.google.appengine.tools.development.Modules.startup(Modules.java:88)
[INFO] at com.google.appengine.tools.development.DevAppServerImpl.doStart(DevAppServerImpl.java:254)
[INFO] at com.google.appengine.tools.development.DevAppServerImpl.access$000(DevAppServerImpl.java:47)
[INFO] at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:212)
[INFO] at com.google.appengine.tools.development.DevAppServerImpl$1.run(DevAppServerImpl.java:210)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:210)
[INFO] at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:277)
[INFO] at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48)
[INFO] at com.google.appengine.tools.development.DevAppServerMain.run(DevAppServerMain.java:219)
[INFO] at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:210)
Je crois que j'ai la bonne combinaison de datanucleus-appengine
et datanucleus
pots:
2.1: Nécessite DataNucleus 3.1.x (noyau, l'api jdo, l'api jpa, enhancer). Nécessite SDK 1.6.4+ Notez que cette version de Datanucleus n'est plus
pris en charge par le DataNucleus projet
APP App Config:
@Configuration
@EnableJpaRepositories("demo.core.entity")
@EnableTransactionManagement
class JpaApplicationConfig {
private static final Logger logger = Logger
.getLogger(JpaApplicationConfig.class.getName());
@Bean
public AbstractEntityManagerFactoryBean entityManagerFactory() {
logger.info("Loading Entity Manager...");
LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean();
factory.setPersistenceUnitName("transactions-optional");
return factory;
}
@Bean
public PlatformTransactionManager transactionManager() {
logger.info("Loading Transaction Manager...");
JpaTransactionManager txManager = new JpaTransactionManager();
txManager.setEntityManagerFactory(entityManagerFactory().getObject());
return txManager;
}
@Bean
public PersistenceExceptionTranslator persistenceExceptionTranslator() {
return new OpenJpaDialect();
}
}
Application.java
@Configuration
@ComponentScan
@EnableAutoConfiguration
@RestController
public class Application {
private static final EntityManagerFactory INSTANCE =
Persistence.createEntityManagerFactory("transactions-optional");
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@RequestMapping("/")
public String home() {
return "Hello World";
}
}
POM:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="...">
<modelVersion>4.0.0</modelVersion>
<groupId>org.demohq</groupId>
<artifactId>demo-boot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>demo-boot</name>
<description>Demo project</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.1.0.BUILD-SNAPSHOT</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</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-legacy</artifactId>
<version>1.1.0.BUILD-SNAPSHOT</version>
</dependency>
<!--<dependency>-->
<!--<groupId>net.kindleit</groupId>-->
<!--<artifactId>gae-runtime</artifactId>-->
<!--<version>${gae.version}</version>-->
<!--<type>pom</type>-->
<!--<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-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</dependency>
<!--<dependency>-->
<!--<groupId>org.hsqldb</groupId>-->
<!--<artifactId>hsqldb</artifactId>-->
<!--<scope>runtime</scope>-->
<!--</dependency>-->
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-labs</artifactId>
<version>${gae.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-stubs</artifactId>
<version>${gae.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-testing</artifactId>
<version>${gae.version}</version>
<scope>test</scope>
</dependency>
<!-- DataNucleus -->
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-api-jpa</artifactId>
<version>${datanucleus.jpa.version}</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>${datanucleus.jpa.version}</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-enhancer</artifactId>
<version>${datanucleus.jpa.version}</version>
</dependency>
<dependency>
<groupId>com.google.appengine.orm</groupId>
<artifactId>datanucleus-appengine</artifactId>
<version>${datanucleus.version}</version>
<!-- Need to exclude the enhancer since it interfere with the enhancer plugin. -->
<exclusions>
<exclusion>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-enhancer</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.jdo</groupId>
<artifactId>jdo-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jpa_2.0_spec</artifactId>
<version>1.1</version>
</dependency>
<!-- OpenJPA -->
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa-persistence</artifactId>
<version>2.3.0</version>
</dependency>
</dependencies>
<properties>
<start-class>demo.Application</start-class>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.7</java.version>
<m2eclipse.wtp.contextRoot>/</m2eclipse.wtp.contextRoot>
<datanucleus.jpa.version>3.1.1</datanucleus.jpa.version>
<datanucleus.version>2.1.2</datanucleus.version>
<gae.version>1.8.8</gae.version>
<gae.home>${settings.localRepository}/com/google/appengine/appengine-java-sdk/${gae.version}/appengine-java-sdk/appengine-java-sdk-${gae.version}</gae.home>
<gae.application.version>test</gae.application.version>
<!--<org.springframework-version>4.0.5.RELEASE</org.springframework-version>-->
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<!--
<plugin>
<groupId>net.kindleit</groupId>
<artifactId>maven-gae-plugin</artifactId>
<version>0.9.6</version>
<dependencies>
<dependency>
<groupId>net.kindleit</groupId>
<artifactId>gae-runtime</artifactId>
<version>${gae.version}</version>
<type>pom</type>
</dependency>
</dependencies>
</plugin>
-->
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>${gae.version}</version>
<configuration>
<enableJarClasses>false</enableJarClasses>
</configuration>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<goals>gae:deploy</goals>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat6-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
<path>/</path>
</configuration>
</plugin>
<plugin>
<groupId>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<version>${datanucleus.jpa.version}</version>
<configuration>
<api>JPA</api>
<!--<mappingIncludes>**/entity/*.class</mappingIncludes>-->
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>${datanucleus.jpa.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<!-- We can configure our integration server to activate this profile and
perform gae:deploy, thus uploading latest snapshot to the http://1.latest.<applicationName>.appspot.com
automatically -->
<profile>
<id>integration-build</id>
<properties>
<gae.application.version>stage</gae.application.version>
</properties>
</profile>
<!-- This profile will activate automatically during release and upload
application to the http://2.latest.<applicationName>.appspot.com (We might
want to set the 2nd version as our applications Default version to be accessible
at http://<applicationName>.appspot.com) -->
<profile>
<id>release-build</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<properties>
<!-- During release, set application version in appengine-web.xml to
2 -->
<gae.application.version>release</gae.application.version>
</properties>
</profile>
</profiles>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>http://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>http://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>http://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>http://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</project>
Je me demande ce qui pourrait manquer dans mon application? J'ai suivi les instructions à partir d'ici À l'aide de Spring Data JPA sur Google Appengine
- Si j'en commentaire de @EnableAutoConfiguration j'obtiens: [INFO] AVERTISSEMENT: échec de la metricFilter: org.springframework.les haricots.usine.NoSuchBeanDefinitionException: Pas de bean nommé "metricFilter" est défini
- Voici le code complet: bit.ly/1i53oAq
- Dans mon cas, c'était printemps-amorçage-starter-data-jpa
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas fourni de Printemps de Démarrage avec suffisamment d'informations pour l'auto-configuration d'un
DataSource
. Pour ce faire, vous aurez besoin d'ajouter des propriétés àapplication.properties
avec lespring.datasource
préfixe. Jetez un oeil à DataSourceProperties pour voir toutes les propriétés que vous pouvez définir.Vous aurez besoin de fournir à l'url appropriée et de la classe du pilote nom:
java -jar myJar.jar
il me donne la même erreur.spring.datasource.url = … spring.datasource.driver-class-name = …
propriétés. J'ai donc ajouté@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
dans ma classe principale. Mais après avoir mis ce maintenant, je suis d'erreurParameter 0 of constructor in org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration required a bean of type 'javax.sql.DataSource' that could not be found.
. S'il vous plaît aider.Si vous souhaitez utiliser embedded H2 base de données à partir du Printemps de Démarrage démarreur ajouter le dessous de la dépendance à votre fichier pom.
Mais comme mentionné dans les commentaires, l'embedded H2 base de données conserve les données en mémoire et ne la stocke en permanence.
J'avais le même problème et à l'exclusion de la DataSourceAutoConfiguration résolu le problème.
application.properties
, commespring.main.web-environment=false
@EnableAutoConfiguration
dans un non-SpringBootApplication classe, et avait pour ajouter l'exclure là aussi. TBH, je n'ai probablement pas besoin de@EnableAutoConfiguration
en premier :/Cela a fonctionné pour moi (1.3.0.M5) :
Exclure les deux classes.
Il ne fonctionne pas avec
Vous pouvez ajouter
à votre
application.properties
fichier.Maintenant que je regarde de plus près, je pense que le problème de la source de données est une diversion. Démarrage Hibernate configuration automatique est déclenché et c'est ce qui provoque une source de données nécessaires. Hibernate est sur le chemin de la classe parce que vous avez une dépendance sur
spring-boot-starter-data-jpa
qui tire danshibernate-entitymanager
.Mise à jour de votre
spring-boot-starter-data-jpa
dépendance à exclure la mise en veille prolongée:De la Printemps manuel.
Pour moi de quitter le printemps-amorçage-starter-data-jpa dépendance et simplement en utilisant le printemps-amorçage-starter-jdbc dépendance a travaillé comme un charme, comme longtemps que je n'avais h2 (ou hsqldb) inclus en tant que dépendances.
Printemps boot vous cherchez datasoure propriétés de l'application.fichier de propriétés.
Veuillez définir dans l'application.propriétés ou fichier yml
application.propriétés
Si vous avez besoin de votre propre configuration vous pouvez définir votre propre profil et utiliser la source de données les valeurs, tout en bean création.
Je ne suis pas si il est trop tard pour répondre.
J'ai pu résoudre ce problème en excluant DataSourceAutoConfiguration de printemps de démarrage.
J'ai eu deux dépendances avec groupId de org.springframework.de données, puis j'ai enlevé jpa et gardé mongodb seulement , et cela a fonctionné!
J'ai fait face à cette exception, tandis que je faisais des Api pour ElasticSearch à l'aide de Données du Printemps. Je n'ai la suite et cela a fonctionné.
- Je résoudre mon problème simplement en ajoutant @AutoConfigureTestDatabase(replace=Remplacer.AUCUN)
J'ai eu le message d'erreur dans le titre de
o.s.b.d.LoggingFailureAnalysisReporter
avec le message "l'APPLICATION n'a pas pu DÉMARRER". Il s'est avéré que je n'avais pas ajouté-Dspring.profiles.active=dev
à mon Eclipse configuration debug donc je n'avais pas de profil actif.Run -> Debug configurations... -> Maven build -> [build name] -> JRE -> VM arguments
)J'ai moi aussi été confronté au même problème.
Dans mon cas, supprimer le fichier jar de dépôt correspondant à la base de données résout le problème. Il a été corrompu pot présents dans le dépôt qui a été à l'origine du problème.
Dans mon cas , je l'ai mis une dépendance maven pour org.jasig.cas dans mon pompon qui a déclenché une hibernation de dépendance et qui a causé le Printemps de Démarrage de chercher une source de données à l'auto-configuration d'hibernate pour la persistance.
Je l'ai résolu en ajoutant le com.h2database maven dependency comme suggéré par user672009. Merci les gars!
Que c'est l'un des premiers sujets retourné dans google pour cette erreur, je vais poster ce que j'ai fait au cas où quelqu'un face à la même question..
Je ne voulais pas exclure
DataSourceAutoConfiguration
ni l'utilisation d'une mémoire de base de données..Dans mon cas, j'étais le réglage des paramètres comme les autres repliers dit, mais la
application.properties
fichier était dans le mauvais dossier.. lolDonc, dans le cas où rien de tel que cela fonctionne, vérifier si le fichier est à l'intérieur de
src/main/resources
! Dans mon cas, c'était à l'intérieur desrc/main/resources/static
Réponse est très simple, SpringBoot va chercher Intégrable pilote de base de données, Si vous n'avez pas à configurer dans tous de votre configuration en forme de XML ou des Annotations, il jette cette exception.
Apportez les modifications dans votre annotation, comme ceci
cela va exclure la DataSourceAutoConfiguration.
Parfait et Simple de Codage d'achèvement serait de travailler si vous avez correctement configuré votre classe.
Faire ci-dessous fonctionne.
Mais Si je voulais avoir la source de données, je ne devrais pas faire la configuration ci-dessus.
Le lien ci-dessous dit que nous avons besoin de toutes les propriétés de l'application.fichier de propriétés. Toutes les propriétés doivent commencer avec
spring.datasource.*
http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
Si vous avez vraiment besoin de "spring-boot-starter-data-jpa" que votre projet de dépendance et en même temps vous ne voulez pas permettre à votre application d'accéder à une base de données, vous pouvez simplement les exclure de l'auto-configuration des classes
J'ai essayé toutes les choses ci-dessus mentionné, mais ne pouvait pas résoudre le problème. J'utilise SQLite et mon SQLite fichier est dans le répertoire de ressources.
a) configurer fait pour IDE
Je besoin d'ajouter manuellement des lignes ci-dessous dans le .classpath fichier de mon projet.
Après, j'ai actualisé et Nettoyé le projet à partir de la barre de menu en haut. comme le Projet->Nettoyage>Mon Nom de Projet.
Après, j'ai exécuter le projet et problème résolu.
application.propriétés pour mon projet est
b) configurer fait si Jar déploiement jeter même erreur
Vous devez ajouter les lignes suivantes à votre pom.xml
Est peut-être ça peut aider quelqu'un.
si vous ne disposez pas d'une base de données dans votre application, il suffit de désactiver la configuration automatique de la source de données par l'ajout d'annotation ci-dessous.
Utiliser en-dessous de la dépendance.
Dans mon cas, l'aide d'IDÉE, après avoir supprimer le
out
direcory, puis tout revient à la normale. Je ne sais pas pourquoi, mais ça a fonctionné.Vous pouvez télécharger le derby-10.10.1.1.jar à partir de la Repository Maven et le placer dans votre WEB-INF/lib du dossier, comme ceci Application/WEB-INF/lib/derby-10.10.1.1.jar.
Embarqué AnnotationConfigEmbeddedWebApplicationcontext vont ramasser le pilote de base de données et que votre serveur va commencer à courir sans aucun problème 🙂
Si vous utilisez Gradle, comprennent le droit pot de pilote en tant que ci-dessous:
Ou si vous utilisez Maven puis le faire en Maven style, cela devrait résoudre votre problème.
À quelqu'un de venir à ce fil, après des heures de frapper votre tête contre un mur. J'ai résolu cette erreur en changeant
à
dans mon schéma.fichier sql dans le répertoire de ressources.
La même chose pour @Anas. Je peux le faire tourner dans Eclipse, mais lorsque j'utilise "java-jar ..." l'exécuter, il me donne cette erreur. Puis-je trouver mon java build path est faux, il manque le dossier “src/main/resources”, donc, l'application ne peut trouver application.les propriétés. Lorsque j'ajoute le “src/main/resources” dans le dossier java build path, il a travaillé.
Et, vous avez besoin d'ajouter "@PropertySource({"application.les propriétés"})" dans votre classe d'Application.
Capture d'écran-1
Capture d'écran-2
Cliquez-droit sur le projet et de sélectionner l'option suivante Maven -> mise à Jour du Projet. Ce qui a résolu mon problème.
Généralement, une telle erreur se produit lorsque vous avez utilisé JPA, et oublier d'ajouter la connexion à la base. Donc, vous devez ajouter une base de données liées à des dépendances de votre application.
Si vous souhaitez utiliser JPA sans connexion de base de données externe puis ajouter hsqldb dans votre dépendance.
J'espère que cela aide!
C'est comment j'ai résolu ce problème.
Dans mon cas: j'ai eu à configurer la source de données pour le Serveur MySQL, qui est un Serveur externe.
Comme nous le savons tous, le Printemps de démarrage a la capacité de s'auto-configurer la source de données pour des bases de données.
Ainsi, j'ai réalisé que j'avais pour désactiver la source de données d'auto-configuration afin d'utiliser ma configuration personnalisée.
Comme mentionné ci-dessus par beaucoup de gens, j'ai désactivé Automatique de la source de données de configuration de Spring Boot à l'application.propriétés
J'ai défini tous les hibernate propriétés de configuration dans un fichier séparé:
hibernate-mysql.propriétés
Ensuite, j'ai codé mon propre Hibernate dans la manière suivante et il a résolu le problème.
Ma façon de configurer la source de données souhaité sur la base de propriétés dans un fichier de propriétés personnalisées et de remplir votre LocalSessionFactoryBean avec votre source de données et d'autres hibernate.
Hibernate Configuration Personnalisée De La Classe:-
---------------------------------------------------------
Hibernate Configuration Personnalisée
Supprimer
C:\Users\admin\.IntelliJIdea2018.1\system\compile-server
J'avais le même problème et à l'exclusion de la DataSourceAutoConfiguration et HibernateJpaAutoConfiguration résolu le problème.
J'ai ajouté ces deux lignes dans mon application.les propriétés de fichier et cela a fonctionné.
Déjà assez de réponses ont été publiées. Cependant, je poste ce que l'erreur que j'ai fait et comment je l'ai corrigé.
Dans mon cas, j'avais emballé mon projet
pom
au lieu dejar
pom.xml:
Changé:
Il peut utile pour quelqu'un avec la même erreur.