programing

데이터 소스 'spring.datasource.url'을(를) 자동 구성하지 못했습니다.

muds 2023. 7. 5. 21:04
반응형

데이터 소스 'spring.datasource.url'을(를) 자동 구성하지 못했습니다.

MySQL, JavaFX, Spring Boot, Spring Data JP 및 Hibernate 프레임워크/기술을 사용하는 프로젝트입니다.

이것은 제 POM 파일입니다.

<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.nubeclick</groupId>
<artifactId>pos</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>POSNubeClick</name>
<description>Sistema de punto de venta (Point Of Sale).</description>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.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>
    <slf4j.version>1.7.12</slf4j.version>
    <log4j.version>1.2.17</log4j.version>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
    <dependency>
        <groupId>com.miglayout</groupId>
        <artifactId>miglayout-javafx</artifactId>
        <version>5.0</version>
    </dependency>
    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>
    <!-- <dependency> -->
    <!-- <groupId>org.slf4j</groupId> -->
    <!-- <artifactId>slf4j-api</artifactId> -->
    <!-- <version>${slf4j.version}</version> -->
    <!-- </dependency> -->
    <!-- <dependency> -->
    <!-- <groupId>org.slf4j</groupId> -->
    <!-- <artifactId>jcl-over-slf4j</artifactId> -->
    <!-- <version>${slf4j.version}</version> -->
    <!-- </dependency> -->
    <!-- <dependency> -->
    <!-- <groupId>org.slf4j</groupId> -->
    <!-- <artifactId>slf4j-log4j12</artifactId> -->
    <!-- <version>${slf4j.version}</version> -->
    <!-- </dependency> -->
    <!-- <dependency> -->
    <!-- <groupId>log4j</groupId> -->
    <!-- <artifactId>log4j</artifactId> -->
    <!-- <version>${log4j.version}</version> -->
    <!-- </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>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>com.jfoenix</groupId>
        <artifactId>jfoenix</artifactId>
        <version>1.10.0</version>
    </dependency>
    <dependency>
        <groupId>de.jensd</groupId>
        <artifactId>fontawesomefx</artifactId>
        <version>8.9</version>
    </dependency>
    <dependency>
        <groupId>org.controlsfx</groupId>
        <artifactId>controlsfx</artifactId>
        <version>8.40.13</version>
    </dependency>
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

이것은 나의 .properties 구성입니다.

spring.main.banner-mode=off

# Datasource connection properties
spring.datasource.url=jdbc:mysql://localhost/posnubeclick
spring.datasource.username=nubeclick
spring.datasource.password=nubeclick
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

# JPA Properties
spring.jpa.database=posnubeclick

# Hibernate Configuration Properties
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
spring.jpa.properties.hibernate.current_session_context_class=thread
spring.jpa.properties.hibernate.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true

# Naming strategy
spring.jpa.hibernate.naming-strategy =org.hibernate.cfg.ImprovedNamingStrategy

#Turn Statistics on
spring.jpa.properties.hibernate.generate_statistics=true

# logging
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n
logging.level.org.hibernate.stat=debug
logging.level.org.hibernate.type=trace
logging.level.org.hibernate.SQL=debug
#logging.level.org.hibernate.type.descriptor.sql=trace
logging.level.=error

이것은 나의 주요 수업입니다.

@SpringBootApplication(scanBasePackages = { "com.nubeclick.pos" })
public class MainApp extends Application {

private static final Logger log = LoggerFactory.getLogger(MainApp.class);

public static void main(String[] args) throws Exception {

    SpringApplication.run(MainApp.class, args);
    // launch(args);
}

@Override
public void start(Stage stage) throws Exception {
    try {
        log.info("Starting Hello JavaFX and Maven demonstration application");

        String fxmlFile = "/fxml/Main.fxml";
        log.debug("Loading FXML for main view from: {}", fxmlFile);
        FXMLLoader loader = new FXMLLoader();
    Parent rootNode = (Parent) loader.load(getClass().getResourceAsStream(fxmlFile));

        log.debug("Showing JFX scene");
        Scene scene = new Scene(rootNode);
        scene.getStylesheets().add("/styles/styles.css");
        stage.setTitle("NubeClick - Point of Sales");
        stage.setScene(scene);
        stage.show();
    } catch (Exception e) {
    // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

다음은 스택 추적입니다.

컨텍스트 초기화 - 새로 고침 시도 취소 중 예외가 발생했습니다. org.springframework.콩 공장불만족스러운 종속성 예외:이름이 'org.springframework.boot.autoconfigure.orm.jpa인 빈을 생성하는 동안 오류가 발생했습니다.최대 절전 모드Jpa 구성':생성자 매개 변수 0을 통해 표현된 종속성이 만족스럽지 않습니다. 중첩된 예외는 org.springframework입니다.콩 공장콩 창조예외:클래스 경로 리소스 [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$]에 정의된 이름 'dataSource'를 사용하여 빈을 생성하는 중 오류 발생Hikari.class]:공장 메서드를 통한 빈 인스턴스화에 실패했습니다. 중첩 예외는 org.springframework입니다.콩. 콩 인스턴스화예외:[com.zaxxer]를 인스턴스화하지 못했습니다.히카리.히카리 데이터 소스]:출고 시 메서드 'dataSource'에서 예외가 발생했습니다. 중첩 예외는 org.springframework.boot.autoconfigure.jdbc입니다.입니다.데이터 소스 속성$데이터 소스 빈 생성예외:적합한 운전자 클래스를 결정하지 못함

Spring 메시지는 다음과 같습니다.

설명:데이터 소스를 자동 구성하지 못했습니다. 'spring.datasource.url'이(가) 지정되지 않았으며 내장된 데이터 소스를 자동 구성할 수 없습니다.이유:적절한 운전자 클래스를 결정하지 못했습니다. 조치:다음 사항을 고려합니다.임베디드 데이터베이스(H2, HSQL 또는 Derby)를 원하시면 클래스 경로에 올려주시기 바랍니다.특정 프로파일에서 로드할 데이터베이스 설정이 있는 경우 활성화해야 할 수 있습니다(현재 활성화된 프로파일이 없음).

는 이 게시물과 이 게시물을 참조했습니다.

저는 무엇을 해야 할지 모르겠습니다. 처음부터 다시 시작할 수도 있지만, 저는 그 틀들을 제 현재 프로젝트에 적용하고 싶습니다.

이 문제를 해결하려면 어떻게 해야 합니까?

미친 짓, 나는 프로젝트를 다른 저장소에 업로드하기로 결정했고, 프로젝트 폴더(삭제된 .project, .settings, .classpath, bin, target)를 완전히 정리하고, eclipse로 다시 가져온 프로젝트를 구성하고, -> maven nature를 추가했는데, 이제 오류가 사라졌습니다.다른 오류가 발생했지만 이제 속성 파일에서 모든 것을 로드합니다. 그렇다면, 왜 이런 일이 발생했을까요?

문서에 대한 링크를 주시면 제가 해야 할 일을 이해할 수 있습니다.

아마도 Spring Boot이 당신의 위치를 찾지 못할 수도 있습니다.application.properties철철철철철철철철철철철철철철철철철철철철이 파일이 리소스 폴더의 루트에 있는지 확인하십시오(일반적인 Maven 프로젝트 구성에서 파일은 다음 위치에 있어야 함).src/main/resources루트 폴더).

DEBUG 로깅 레벨을 활성화하여 스프링 부트가 올바르게 판독되는지 확인하는 것이 좋습니다.application.properties파일.

pom.xml 또는 build.gradle 파일에 mysql 종속성이 있는지 확인합니다.

compile 'mysql:mysql-connector-java'

또는

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

그러면 당신은 당신의 의견을 말할 수 있습니다.driver-class-name속성. 스프링 부트가 자동으로 구성하기 때문입니다.

한가지 더:콘크리트 포트에 mysql(기본값은 3306)을 연결해야 하므로 다음과 유사하게 나타나야 합니다.

spring.datasource.url=jdbc:mysql://localhost:3306/posnubeclick

만약 우리가 서로 옆에 앉는다면, 이것이 제가 할 일입니다. 몇 줄을 언급하세요.

# Datasource connection properties
spring.datasource.url=jdbc:mysql://localhost/posnubeclick
spring.datasource.username=nubeclick
spring.datasource.password=nubeclick
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver

# JPA Properties
#spring.jpa.database=posnubeclick

또한 .properties 파일의 이름은 application.properties입니까 아니면 bootstrap.properties입니까?

다른 저장소에 프로젝트를 업로드하기로 결정하고 프로젝트 폴더(삭제된 .project, .settings, .classpath, bin, target)를 모두 정리한 후 eclipse로 다시 가져온 프로젝트를 구성하고 -> maven nature를 추가했습니다. 이제 오류가 사라졌습니다. 적어도 이 오류는 다른 오류를 가져왔지만 이제 속성 파일에서 모든 것을 로드합니다,그렇게,왜 이런 일이 일어났을까요?

언급URL : https://stackoverflow.com/questions/50079841/failed-to-auto-configure-a-datasource-spring-datasource-url

반응형