У меня есть эти зависимости в моем файле gradle.
dependencies {
implementation('org.springframework.boot:spring-boot-starter-actuator')
implementation('org.springframework.boot:spring-boot-starter-web')
implementation('org.springframework.cloud:spring-cloud-starter-sleuth')
implementation('org.springframework.cloud:spring-cloud-starter-zipkin')
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
implementation group: 'ch.qos.logback.contrib', name: 'logback-json-classic', version: '0.1.5'
implementation group: 'ch.qos.logback.contrib', name: 'logback-jackson', version: '0.1.5'
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.24'
implementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.0'
implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
implementation group: 'com.oracle', name: 'ojdbc', version: '6.0'
compileOnly('org.projectlombok:lombok')
testImplementation('org.springframework.boot:spring-boot-starter-test')
integrationTestCompile('org.springframework.boot:spring-boot-starter-test')
integrationTestCompile group: 'com.github.tomakehurst', name: 'wiremock', version: '2.1.6'
integrationTestCompile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
integrationTestCompile group: 'ch.qos.logback.contrib', name: 'logback-json-classic', version: '0.1.5'
integrationTestCompile group: 'ch.qos.logback.contrib', name: 'logback-jackson', version: '0.1.5'
integrationTestCompile group: 'com.google.code.gson', name: 'gson', version: '2.8.5'}
Однако после добавления:
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
приложение не запускается.
Весь мой файл Gradle:
buildscript {
ext {
springBootVersion = '2.0.7.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
plugins {
id "org.sonarqube" version "2.5"
id "io.franzbecker.gradle-lombok" version "1.14"
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'jacoco'
group = 'com.doruk'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
maven {
url "http://nexus.internal/repository/maven-public/"
}
maven {
url "http://nexus.internal/repository/maven-snapshots/"
}
maven {
url "http://nexus.internal/repository/maven-releases/"
}
mavenCentral()
jcenter()
}
ext {
springCloudVersion = 'Finchley.SR2'
}
configurations {
integrationTestCompile.extendsFrom testCompile
integrationTestRuntime.extendsFrom testRuntime
}
dependencies {
implementation('org.springframework.boot:spring-boot-starter-actuator')
implementation('org.springframework.boot:spring-boot-starter-web')
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation('org.springframework.cloud:spring-cloud-starter-sleuth')
implementation('org.springframework.cloud:spring-cloud-starter-zipkin')
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
implementation group: 'ch.qos.logback.contrib', name: 'logback-json-classic', version: '0.1.5'
implementation group: 'ch.qos.logback.contrib', name: 'logback-jackson', version: '0.1.5'
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.24'
implementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.0'
implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
implementation group: 'com.oracle', name: 'ojdbc', version: '6.0'
compileOnly('org.projectlombok:lombok')
testImplementation('org.springframework.boot:spring-boot-starter-test')
integrationTestCompile('org.springframework.boot:spring-boot-starter-test')
integrationTestCompile group: 'com.github.tomakehurst', name: 'wiremock', version: '2.1.6'
integrationTestCompile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
integrationTestCompile group: 'ch.qos.logback.contrib', name: 'logback-json-classic', version: '0.1.5'
integrationTestCompile group: 'ch.qos.logback.contrib', name: 'logback-jackson', version: '0.1.5'
integrationTestCompile group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
}
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
sonarqube {
properties {
property "sonar.jacoco.itReportPath", "$buildDir/jacoco/integrationTest.exec"
}
}
sourceSets {
integrationTest {
java {
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
srcDir file('src/integration-test/java')
}
resources.srcDir file('src/integration-test/resources')
}
}
sourceSets.main.output.resourcesDir = sourceSets.main.output.classesDir
sourceSets.test.output.resourcesDir = sourceSets.test.output.classesDir
sourceSets.integrationTest.output.resourcesDir = sourceSets.integrationTest.output.classesDir
task integrationTest(type: Test) {
testClassesDir = sourceSets.integrationTest.output.classesDir
classpath = sourceSets.integrationTest.runtimeClasspath
}
check.dependsOn integrationTest
integrationTest.mustRunAfter test
bootJar {
mainClassName = "com.doruk.customer.Main"
}Он отлично работает без spring-boot-starter-jpa, однако, если добавить его, когда я запускаю, он застревает в
{"timestamp":"2018-12-24 03:00:31.400","level":"INFO","thread":"main","logger":"com.doruk.customer.Main","message":"No active profile set, falling back to default profiles: default","context":"default"}
Я пытаюсь добавить конкретную версию зависимости, например:
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.0.7.RELEASE'
и это не сработало.
Я также попытался удалить всю свою папку .gradle и снова загрузить.
Приложение получает зависимости от нексуса.
Как я могу это решить?




У вас должна быть только одна зависимость. Я заметил, что вы добавили эту зависимость.
dependencies {
implementation('org.springframework.boot:spring-boot-starter-actuator')
implementation('org.springframework.boot:spring-boot-starter-web')
implementation("org.springframework.boot:spring-boot-starter-data-jpa") //here
Тогда вам не следует добавлять его снова.
Хорошо, я обновлю свой ответ, зачем вам эта зависимость?
Я использую для создания Entity, что необходимо для аннотаций в постоянном api
Конечно! но так почему вы используете реализацию зарезервированного слова, которая используется в проекте на ОС Android?
Однако даже я не добавляю код в свой проект. Он не запускается, он застревает при запуске, когда я добавляю зависимость jpa в gradle. Я имею в виду, что в настоящее время я не использую jpa.
Хорошо, это редко ... не могли бы вы поделиться репо?
Я не думаю, что это так. Я в основном использую ключевое слово реализации, он отлично работает. Однако я пробовал и до сих пор не работаю с ключевым словом compile.
Я не добавлял эту зависимость дважды, весь мой пост в Gradle выдает ошибку. Если я извлекаю реализацию ('org.springframework.boot: spring-boot-starter -web'), она запускается.