Spring with Gradle - консоль H2 не отображается на localhost: консоль 8080 / h2 - PullRequest
0 голосов
/ 15 октября 2018

Я скачал Gradle и сделал новый проект с указанием на существующий файл Gradle.Теперь я хотел подключиться к базе данных H2.database.Вот мой build.gradle файл:

plugins {
    id 'java'
    id 'org.springframework.boot' version '2.0.5.RELEASE'
    id "io.spring.dependency-management" version "1.0.6.RELEASE"
}
apply plugin: 'application'
apply plugin: 'idea'
group 'shop.hello.manualgradle'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8
mainClassName = 'hello.HelloWorld'

repositories {
    mavenCentral()
}

jar {
    baseName = 'gs-gradle'
    version = '0.1.0'
}
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    compile group: 'joda-time', name: 'joda-time', version: '2.2'
    compile 'org.springframework.boot:spring-boot-starter-web'
    compile 'org.springframework.boot:spring-boot-starter-data-jpa'
    compile 'com.h2database:h2'
    compile 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310'

}

А вот application.properties файл, который я сделал как в src / main / resources, так и в src /test / resources

spring.datasource.name=ecommercedb
spring.jpa.show-sql=true
#H2 settings
spring.h2.console.enabled=true
spring.h2.console.path=/h2-console

Я запускаю проект с идеей gradle для обновления зависимостей, затем собираю gradlew и запускаю gradlew.Там нет ошибки, но когда я иду на localhost: 8080 / h2-console все, что я получаю, это плохое соединение.Я тоже пробовал с Gradle Build.Почему это происходит?Я также использую IntelIJ, и у меня есть папки build и gradle красным, почему?Я использовал это руководство: https://www.baeldung.com/spring-angular-ecommerce, но я использую собственный gradle вместо Initializr, и у меня есть файлы Gradle: com.h2.database во внешних библиотеках, так что это должно работать, я думаю!Пожалуйста, помогите

1 Ответ

0 голосов
/ 15 октября 2018

Ваша сборка Gradle выглядит нормально, и ваш файл конфигурации application.properties в порядке.Единственное, что нужно сделать, чтобы сделать доступной консоль H2, - это установить свойство spring.h2.console.enabled=true, как вы это делали: чтобы оно работало ... Вам не нужно настраивать datasource.url или учетные данные, Springboot будет использовать URL-адрес по умолчаниюjdbc:h2:~/test.

Вы должны попытаться настроить уровень ведения журнала H2 db и проверить, видите ли вы ошибки / предупреждения при запуске приложения или при попытке получить доступ к консоли H2: добавьте следующее свойство в application.propertiesfile

spring.datasource.url=jdbc:h2:~/test;TRACE_LEVEL_FILE=4

Затем вы должны увидеть следующие следы при запуске вашего приложения:

2018-10-15 19:56:25.090 DEBUG 7576 --- [           main] h2database                               : test:jdbc[3] 
/**/conn0.clearWarnings();

При попытке получить доступ к консоли H2 вы должны увидеть такие следы:

 2018-10-15 19:57:21.179 DEBUG 7576 --- [nio-8080-exec-7] h2database                               : test:jdbc[13] Table      :     potential plan item cost 10 000 index meta
...