2017-10-17 32 views
0

他の誰かが作成したスプリングブートアプリケーションを実行しようとしています。アプリケーションにローカルデータベースを接続しようとしましたが、これを実行すると、次のエラーが発生します。スプリングブートBean例外:データベースタイプNONEの埋め込みデータベースドライバクラスを特定できません

org.springframework.beans.factory.BeanCreationException:名 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration' を持つBeanの作成エラー:autowired依存性の注入を失敗しました。ネストされた例外はorg.springframework.beans.factory.BeanCreationExceptionです:フィールドをオートワイヤできませんでした:private javax.sql.DataSource org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.dataSource;ネストされた例外はorg.springframework.beans.factory.BeanCreationExceptionです:クラスパスリソース[org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration $ NonEmbeddedConfiguration.class]で定義された 'dataSource'という名前のBeanを作成中にエラーが発生しました: ;ネストされた例外はorg.springframework.beans.BeanInstantiationExceptionです:[javax.sql.DataSource]のインスタンス化に失敗しました:ファクトリメソッド 'dataSource'が例外をスローしました。ネストされた例外はorg.springframework.boot.autoconfigure.jdbc.DataSourcePropertiesです。$ DataSourceBeanCreationException:データベースタイプNONEの埋め込みデータベースドライバクラスを特定できません。組み込みデータベースが必要な場合は、サポートされているデータベースをクラスパスに入れてください。特定のプロファイルからロードするデータベース設定がある場合は、アクティブにする必要があります(プロファイルは現在アクティブではありません)。

私はこれに新しいです、そして、私は問題が何かを見つけることができません。詳細:

ここで、xxxはデータベースの名前です。

ワークベンチ:

Name: Local instance wampmysqld64 
Host: localhost 
Port: 3306 
Server: MySQL Community Server (GPL) 
Version: 5.7.18-log 
Connector: C++ 1.1.4 
Login User: root 
Current User: [email protected] 
SSL: Disabled 

そして、サーバが稼働しています。

EDIT

のpom.xml

<project> 

<modelVersion>4.0.0</modelVersion> 

<groupId>****</groupId> 
<artifactId>****</artifactId> 
<version>0.0.1-SNAPSHOT</version> 

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.3.6.RELEASE</version> 
</parent> 

<dependencies> 
    <dependency> 
     <groupId>org.modelmapper</groupId> 
     <artifactId>modelmapper</artifactId> 
     <version>1.1.0</version> 
    </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-data-jpa</artifactId> 
    </dependency> 
     <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
    </dependency> 
</dependencies> 

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

</project> 

EDIT2

Application.properties

spring.datasource.url=jdbc:mysql://localhost:3306/xxx 
spring.datasource.username=root 
spring.datasource.password=root 

spring.jpa.hibernate.ddl-auto=update 
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQLDialect 
spring.jpa.properties.hibernate.id.new_generator_mappings = false 
spring.jpa.properties.hibernate.format_sql = true 
logging.level.org.hibernate.SQL=DEBUG 
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE 

ng.level.org.hibernate.type.descriptor.sql.BasicBinder = TRACE

Application.java

package gdprserver; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.autoconfigure.data.rest.RepositoryRestMvcAutoConfiguration; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.context.web.SpringBootServletInitializer; 
import org.springframework.context.annotation.Bean; 

@SpringBootApplication(exclude = RepositoryRestMvcAutoConfiguration.class) 
public class Application extends SpringBootServletInitializer { 
    @Override 
    protected SpringApplicationBuilder configure(final SpringApplicationBuilder application) { 
     return application.sources(Application.class); 
    } 

    public static void main(final String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 

    @Bean 
    public ModelMapper modelMapper() { 
     return new ModelMapper(); 
    } 
} 

EDIT3

私はと春のブートアプリケーションを実行しますコマンドを使用してCMD:java -jar xxx.jar

+1

あなたは確かに(理想的には?SRC /メイン/ resources' 'でクラスパス上のあなたの' application.properties'ファイルはまた、あなたの 'SpringBootApplication'クラス@ –

+0

application.propertiesが'のsrc /メイン/リソースに配置されて表示され'yes。 – Klyner

+0

spring-boot-startter-jdbcやspring-boot-starter-data-jpaはありませんか? –

答えて

0

Eclipseでアプリケーションを実行するソリューションが見つかりました。

私はJavaアプリケーション - > SpringApplicationをメインクラスで使ってアプリケーションを実行しようとする前に:org.springframework.boot.SpringApplication。メインクラスをxxx.Application(xxxはプロジェクト名)に変更します。

0

例外「組み込みdaを決定できませんデータベースタイプNONEのtabaseドライバクラス。 Springがデータベースを定義するプロパティを見つけることができないために発生します。それは、データソースを作成/設定するのに必要な情報を持っていないことを伝えています。

IDE関連の問題である可能性があります。 mavenを使ってjarファイルをビルドし、実行してみてください。同じ例外が発生した場合は、jarファイルを開いてその中を調べ、正しく追加されていることを確認します。

0
package com.fyakuthibernatespringboot.demo; 


@SpringBootApplication 
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) 
public class DemoApplication { 

    public static void main(String[] args) { 
     SpringApplication.run(DemoApplication.class, args); 
    } 
} 
関連する問題