Java Gradle在项目范围服务中不提供类型化文本输出工厂的服务

2 java gradle

在控制台中构建项目时,在项目范围服务中没有可用的样式化文本输出工厂服务。我还有一个文件pom.xml。我不知道我做错了什么

这是我的build.gradle:

import java.sql.Wrapper

buildscript {
    ext {
        springBootVersion = '1.2.5.RELEASE'
    }
    repositories {
        maven { url "http://repo.spring.io/libs-milestone" }
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") 
        classpath("io.spring.gradle:dependency-management-plugin:0.5.1.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse-wtp'
apply plugin: 'idea'
apply plugin: 'spring-boot' 
apply plugin: 'io.spring.dependency-management' 
apply plugin: 'war'


war {
    baseName = 'springboot'
    version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.7
targetCompatibility = 1.7

repositories {
    mavenCentral()
    maven { url "http://repo.spring.io/libs-milestone" }
}

configurations {
    providedRuntime
}

dependencies {
    compile("org.springframework.boot:spring-boot-starter-data-jpa")
    compile("javax.servlet:jstl:1.2")
    runtime("mysql:mysql-connector-java")
    compile("org.springframework.boot:spring-boot-starter-jdbc")
    // https://mvnrepository.com/artifact/javax.el/el-api
    compile group: 'javax.el', name: 'el-api', version: '2.2.1-b04'

    compile ("org.springframework.boot:spring-boot-starter-web")
    providedRuntime("org.springframework.boot:spring-boot-starter-tomcat")
    providedRuntime 'org.apache.tomcat.embed:tomcat-embed-jasper'
}


eclipse {
    classpath {
         containers.remove('org.eclipse.jdt.launching.JRE_CONTAINER')
         containers 'org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7'
    }
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.3'
}
Run Code Online (Sandbox Code Playgroud)

Jam*_*tti 6

我相信问题出在使用的是Gradle和Spring的依赖管理插件的版本。

请参阅Gradle 2.14-rc1中的此Bug中 Spring团队的原始报告-没有StyledTextOutputFactory报告类型的服务。Gradle StyledTextOutputFactory在某个时候(对于3.0发行版)将其移动到了内部软件包中,这破坏了dependency-management-plugin0.5.x。

依赖项管理插件问题详细介绍了其所做的更改以解决其0.6.0版本中的问题。

我看到您的构建脚本引用了Gradle 2.3 ...,但我想知道这是否正确。

我认为归结起来要么将Gradle 2.x与依赖管理插件0.5.x一起使用,要么将Gradle 3.x与依赖管理插件0.6.x一起使用。

祝好运。