Sınıf yolu kaynağında tanımlanan 'entityManagerFactory' adıyla fasulye oluşturulurken hata oluştu: Başlatma yönteminin çağrılması başarısız oldu


115

Bahar projemi derlediğimde aşağıdaki hatayı aldım.

Sınıf yolu kaynağında [org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class] tanımlı 'entityManagerFactory' adıyla bean yaratılırken hata oluştu: init yönteminin çağrılması başarısız oldu

STS Eclipse ve MySql Veritabanı kullanıyorum

Benim Bağlantı dizesi Application.PropertiesDİR

spring.datasource.url=jdbc:mysql://localhost:3306/stgdb
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update

Ayrıntılı hata aşağıda verilmiştir

=================================================

2016-10-15 15:34:38.875[0;39m [31mERROR[0;39m [35m3700[0;39m [2m---[0;39m [2m[           main][0;39m [36mo.s.boot.SpringApplication              [0;39m [2m:[0;39m Application startup failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1583) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1076) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:851) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]
    at com.s2g.testrestapplication.TestRestApplication.main(TestRestApplication.java:10) [classes/:na]
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:954) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:882) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:60) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:353) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:373) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:362) ~[spring-orm-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1642) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1579) ~[spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]
    ... 16 common frames omitted
Caused by: org.hibernate.exception.GenericJDBCException: Unable to obtain JDBC Connection
    at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:47) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcConnection(ExtractionContextImpl.java:65) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcDatabaseMetaData(ExtractionContextImpl.java:75) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.InformationExtractorJdbcDatabaseMetaDataImpl.locateTableInNamespace(InformationExtractorJdbcDatabaseMetaDataImpl.java:339) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.InformationExtractorJdbcDatabaseMetaDataImpl.getTable(InformationExtractorJdbcDatabaseMetaDataImpl.java:241) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.DatabaseInformationImpl.getTableInformation(DatabaseInformationImpl.java:105) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigrationToTargets(SchemaMigratorImpl.java:162) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigration(SchemaMigratorImpl.java:60) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:134) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:101) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:472) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:444) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:879) ~[hibernate-entitymanager-5.0.11.Final.jar:5.0.11.Final]
    ... 22 common frames omitted
Caused by: com.atomikos.jdbc.AtomikosSQLException: Connection pool exhausted - try increasing 'maxPoolSize' and/or 'borrowConnectionTimeout' on the DataSourceBean.
    at com.atomikos.jdbc.AtomikosSQLException.throwAtomikosSQLException(AtomikosSQLException.java:46) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.throwAtomikosSQLException(AbstractDataSourceBean.java:90) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.throwAtomikosSQLException(AbstractDataSourceBean.java:85) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.getConnection(AbstractDataSourceBean.java:347) ~[transactions-jdbc-3.9.3.jar:na]
    at com.atomikos.jdbc.AbstractDataSourceBean.getConnection(AbstractDataSourceBean.java:394) ~[transactions-jdbc-3.9.3.jar:na]
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:180) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    at org.hibernate.tool.schema.extract.internal.ExtractionContextImpl.getJdbcConnection(ExtractionContextImpl.java:62) ~[hibernate-core-5.0.11.Final.jar:5.0.11.Final]
    ... 33 common frames omitted
==============================
Pom.xml file
<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.s2g.testrestapplication</groupId>
    <artifactId>testrestapplication</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>TestRestApplication</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.2.2</version>
        </dependency>

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.2.2</version>
        </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>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</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.opensaml</groupId>
            <artifactId>opensaml-saml-api</artifactId>
            <version>3.1.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jersey</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jta-atomikos</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

3
Açıkçası, aldığınız "hata" aslında "Neden olduğu: com.atomikos.jdbc.AtomikosSQLException: Bağlantı havuzu tükendi - DataSourceBean üzerinde" maxPoolSize "ve / veya" borrowConnectionTimeout "u artırmayı deneyin."
Neil Stockton

Yanıtlar:


78

Aşağıdaki bağımlılığı ekleyerek başlayacağım:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.1.4.Final</version>
</dependency>

ve

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>5.2.3.Final</version>
</dependency>

GÜNCELLEME : Veya Aşağıdaki bağımlılığı ekleyin.

<dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
</dependency>

33
@ georges-van Aynı hatayla karşılaştım ve bahsettiğiniz 2 bağımlılık halihazırda spring-boot-starter-data-jpaşu hatayı alıyorum. anotepad.com/notes/wpjr5g

@georgesvan, yaylı önyüklemeden ithal edildiğinden bahsettiğiniz yukarıdaki kavanozlara zaten sahibim. Düşündüğünüz şey, bu aynı hatanın nedeni olabilir. Hazırda bekletmeyle ilgili herhangi bir bağımlılık eklediğimde de aynı sorunla karşılaşıyorum. Javax.persistence paketindeki java dosyalarını kullandığımda her şey yolunda, ancak org.hibernate paketinden herhangi bir java dosyası kullandığımda tam olarak aynı hata ortaya çıkıyor.
user641887

1
Sadece gönderide belirtilen sürümlerin aynısını kullanın.
Shahab A

4
@georges, thevikasdube zaten Hibernate'i içeren spring-boot-starter-data-jpa bağımlılığını kullanıyor. Hazırda bekletme bağımlılıklarını açıkça dahil etmesi için herhangi bir neden?
Mav55

6
Bilginize hibernate-entitymanager, artık kullanımdan kaldırılmıştır. hibernate-coreBunun yerine (yalnızca) kullanın.
Bohemian

74

Java 9 kullanan kişiler şu bağımlılığı içerir: -

<dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
</dependency>

4
Java 8 sonrası sürümlerin neden bu açık eklemeyi gerektirdiğini merak edenler için, burada ilginç bir makale var; baeldung.com/java-9-jaxbexception , temelde Java 9s modüler sistemin tanıtımı ve gerekli olmayan tüm
kitaplıkları zayıflatma

Java 8 kullanmama rağmen bu benim için çalıştı, teşekkürler.
ahmetcetin

Bu gradle için ne olabilir?
FlexEast

Bu çözüldü; sorun, teşekkürler
bileleleuch

18

Bağımlılık eklemek sorunu benim tarafımda çözmedi.

"@Entity" sınıfının bir parçası olan ve veritabanında bulunmayan "ek" alanlar nedeniyle sorun benim tarafımda oluyordu.

@Entity sınıfından ek alanları kaldırdım ve işe yaradı.

İyi şanslar.


1
Ek alanlarla ne demek istiyorsun? Bununla ilgili daha fazla bilgi verebilir misiniz? şimdi aynı sorunu
yaşıyorum

Özel / genel tamsayılar gibi veritabanında bulunmayan ek özellikleri kastettim..etc
JAD

Çalıştı.! Entity sınıfımda iki kurucu vardı (arg, no-arg). Bunları kaldırdım ve işe yaradı. Teşekkürler @ JAD. mutlu kodlama.
Bandham Manikanta

Evet, bu sorun varlık sınıflarının herhangi birindeki bir sorunla ilgili olabilir.
zee

Yaradı! Hata, bağımlılık veya varlık yöneticisi yapılandırma sorunu değildi. Sorun, varlık sınıfımdan biriydi. Varlık sınıflarımı kalıcılık yöneticisi yardımıyla oluşturduktan sonra sorun çözüldü. Teşekkürler.
Peter

9

Ben de aynı sorunla karşılaştım. Java9 kullanıyordum ve pom dosyasında aşağıdaki bağımlılığı kullanıyordum:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</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-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

Aşağıdaki bağımlılık pom'a eklendikten sonra sorun çözüldü:

    <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
    </dependency>

8
Bu Rahul Jangra'nın cevabının bir kopyasıdır: stackoverflow.com/a/49707331/636009
David Conrad

7

Jar dosyalarının hibernate-coreve hibernate-entitymanagerbağımlılıklarının bozuk olduğundan veya makinenize düzgün şekilde yüklenmediğinden şüpheleniyorum .

Yalnızca adlandırılmış klasörleri hibernate-coreve hibernate-entitymanagerMaven yerel deponuzdan silmenizi öneririm, Maven bunları yeniden yükleyecektir.

Maven yerel deposu için varsayılan konum C:\Documents and Settings\[USERNAME]\.m2, Windows veya ~/.m2Linux / Mac'tedir.


Benim için çalıştı, ilkbahar önyükleme sürümünü 1.5'ten 2.3'e güncelledim ve bu hatayı alıyordum.
Ali786

Tüm depomu sildim ve çalışıyor. Bunu ve diğer birçok hatayı ilkbahar
açılışıyla

5

Benim durumumda, aşağıdaki ek açıklamalardan herhangi birinin silinmesi, örneğin 'entityManagerFactory' hata mesajının gösterilmesine neden oluyor.

 @Id
  @GeneratedValue(strategy=GenerationType.AUTO)

veya

@ManyToMany(targetEntity=listOfObject_x.class)

Eksik açıklama (lar) eklendikten sonra hata mesajı kaybolur.

package mypackage_unameit;
import javax.persistence.PrePersist;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import lombok.Data;

@Data
@Entity
public class Someclasss {

  @Id
  @GeneratedValue(strategy=GenerationType.AUTO)
  private Long id;

  @NotNull
  @Size(min=5, message="Name must be at least 5 characters long")
  private String name;

  private Date createdAt;

  @ManyToMany(targetEntity=listOfObject_x.class)
  @Size(min=1, message="You must choose at least 1 ingredient")
  private List<listOfObject_x>   = new ArrayList<>();

  @PrePersist
  void createdAt() {
    this.createdAt = new Date();
  }
}

5

Jdk-12.0.2.jdk, soruna çözüm buldum, pom.xml'ye bağımlılıklar ekledim:

<!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
<dependency>
    <groupId>org.javassist</groupId>
    <artifactId>javassist</artifactId>
    <version>3.25.0-GA</version>
</dependency>

1
Teşekkür ederim, ben de JDK 12 kullanıyorum ve bu benim için çalışan tek program.
AnT

Bu bağımlılıkları eklemenin neden bazılarımız için hatayı çözdüğünü açıklayan var mı?
Keegs

4

Maven yerine Gradle kullananlar için, bunu derleme dosyanızdaki bağımlılıklara ekleyin:

compile('javax.xml.bind:jaxb-api:2.3.0')

3

Benimkini, yay bağımlılıkları sürümlerini 2.0.4'ten 2.1.6'ya güncelleyerek çözdüm.

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>

için

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
</parent>

Yukarıdaki tüm çözümleri denedim ama sadece bu benim için çalışıyor! Günümü kurtar !!!
Harriet

2

Benim durumum için bu, varsayılan olarak Intellij IDEA nedeniyle Java 11'i varsayılan proje SDK olarak ayarladı, ancak proje Java 8'de uygulandı. Dosya -> Proje Yapısı -> Proje'de (Proje Ayarlarında) "Proje SDK" yı değiştirdim


Bu benim de sorunumdu, Java8 kullanan eski bir projeyi yeni indirilen IntellijIDEA ile açmaya çalıştığınızda çözüm budur.
fakturk

MacOS'a Java8 yüklemek için - brew cask install adaptopenjdk / openjdk / adaptopenjdk8
fakturk

2

JPA kullanmayanlar ve bunun yerine entityManagerFactory'yi hariç tutmayı ve Spring Data JDBC veya Spring JDBC'yi kullanmayı tercih edenler için istisnayı önlemek için fasulyeyi hariç tutabilir

@SpringBootApplication(exclude = {HibernateJpaAutoConfiguration.class})

1

Maksimum havuz boyutu değerini birden ikiye değiştirerek sorunu çözebildim

spring.datasource.hikari.maximum-havuz boyutu = 2


1

Sınıfa @EnableTransactionManagement ile açıklama eklemeyi deneyin. Aynı sorunla karşı karşıyaydım ve bunu ekleyerek çözüldü.

@EnableTransactionManagement
public class ConfigurationBean {
}

1

Bu sorunu Modele Seri hale getirilebilir uygulamaları ekleyerek çözdüm.

@Entity
@Table(name="Model_Rest")
@IdClass(Model_Rest.class)
public class Model_Rest implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    /**
     * 
     */
    //@GeneratedValue(strategy = GenerationType.AUTO)
    //@Column(columnDefinition="id")

    @Id
    private String login;
    @Id
    private String password;




    @Autowired
    public String getLogin() {
        return login;
    }

    @Autowired
    public void setLogin(String login) {
        this.login = login;
    }

    @Autowired
    public String getPassword() {
        return password;
    }

    @Autowired
    public void setPassword(String password) {
        this.password = password;
    }

    public Model_Rest() {
        // TODO Auto-generated constructor stub
    }

    public Model_Rest(String login, String password) {
        this.login = login;
        this.password = password;
    }

    @Override
    public String toString() {
        return "Model_Rest [login=" + login + ", password=" + password + "]";
    }
  }

1

Bu hata, örneğin yanlış bir db adı verdiğinizde "spring.datasource.url" dosyanızda bir hata olmasıyla da ilgili olabilir.


0

Benim için @Id kullanın, aksi takdirde hata atarım, varlık sınıfınızda veya deponuzda eksik bir şey olup olmadığına bağlıdır.


0

JDK 1.8.0_201 veya en son sürümünü kullanıyorsanız, eski JDK ile deneyin.

JDK1.8.0_201 ile aynı sorunu yaşıyorum, ancak JDK1.8.0_101 ile herhangi bir kod değişikliği olmadan çalışıyor.


0

Benim için başka bir hatanın sonucuydu

org.postgresql.util.PSQLException: FATAL: kullanıcı için parola kimlik doğrulaması başarısız oldu

Bu, yalnızca kimlik doğrulama bilgilerinizi gözden geçirmeniz gerektiği anlamına gelir


0

Bu bağımlılığı ekledikten sonra hatam çözüldü.

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->
    <dependency>
        <groupId>org.hibernate.validator</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>6.0.16.Final</version>
    </dependency>

0

Yay versiyonunu değiştirmeyi deneyin. Aynı sorunu yaşadım ve bu benim için çalıştı


0

Eclipse Luna'mda da aynı sorunu yaşadım. JDK12 ve Java 1.8 kullandığımı anladım. JDK'yi JDK8 olarak değiştirdim ve sorun çözüldü. Eclipse'de JDK'nızı kontrol etmek istiyorsanız şu adrese gidin:

Window-> Preferences-> Java- >Installed JREs 

ve projenizle uyumlu olup olmadıklarını kontrol edin. İyi şanslar!


0

Benim için application.properties üzerindeki veritabanının adıydı. Doğru adı verdiğimde işe yaradı.


0

Ek bir alan için ters ilişki açıklamasını tanımlayarak benimkini çözdüm


0

Kim hala aynı sorunu yaşıyorsa. Lütfen application.properties dosyasında aşağıdaki satırı ekleyin

# The SQL dialect makes Hibernate generate better SQL for the chosen database
## I am using Mysql8 so I have declared MySQL8Dialect if you have other versions just add ## that version number
spring.jpa.properties.hibernate.dialect =  org.hibernate.dialect.MySQL8Dialect

-1

Ben de benzer bir hatadan geçtim. Hata daha önce gelmiyordu, ancak son zamanlarda oracle db'mi yeniden yükledim ve örnek adını 'xe' yerine 'orcl' olarak değiştirdim, ancak özellik dosyasında bu kod parçasını değiştirmeyi unuttum:

spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:***xe***
spring.datasource.username=system
spring.datasource.password=manager

"Xe" den "orcl" ye değiştirdiğimde her şey yolunda.


-1

Sorun, paket çakışmalarından kaynaklanıyor olabilir. Bir @Idvarlıkta açıklama kullandığınızda, @IdBahar çerçevesini kullanabilir; ancak @Idkalıcılık API ek açıklamasını kullanmalıdır .

Öyleyse @javax.persistence.Idvarlıklarda ek açıklama kullanın .


Sınıfa erişirseniz, içe aktarma yoluyla paket referansıyla belirli bir sınıfa başvurur. Bunu yaparsanız, bu bir derleme zamanı hatasıdır ve ilk etapta herhangi bir işlem sırasında yakalanır. Dolayısıyla, @Id ile JPA ve Spring ile çatışma ihtimali yoktur.
İmam Bux

Bunun hangi soruyu cevaplamaya çalıştığından emin değilim, ama bu soru değil. @Id ile açıklama eklemek (veya vermemek), "Bağlantı havuzu tükendi - DataSourceBean üzerinde 'maxPoolSize' ve / veya 'borrowConnectionTimeout'u artırmayı deneyin."
Mark Rotteveel

-2

Aşağıdaki bağımlılıkları eklemeyi deneyin.

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
   <groupId>com.h2database</groupId>
   <artifactId>h2</artifactId>
</dependency> 
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.