gradle引导运行的执行失败

gradle引导运行的执行失败,gradle,groovy,spring-boot,netflix-eureka,Gradle,Groovy,Spring Boot,Netflix Eureka,我正在尝试运行我的springboot应用程序。。。这一切都始于我将eureka spring云插件添加到gradle.build文件: 编译“org.springframework.cloud:springcloudstartereureka” 当我运行“gradle bootRun”时,我得到以下错误: 原因:java.io.IOException:无法运行程序“C:\program Files\java\jdk1.8.0\u 91\bin\java.exe”。CreateProcess错误

我正在尝试运行我的springboot应用程序。。。这一切都始于我将eureka spring云插件添加到gradle.build文件:

编译“org.springframework.cloud:springcloudstartereureka”

当我运行“gradle bootRun”时,我得到以下错误:

原因:java.io.IOException:无法运行程序“C:\program Files\java\jdk1.8.0\u 91\bin\java.exe”。CreateProcess错误=206,文件名太长。

我的build.gradle是:

import java.text.SimpleDateFormat

buildscript {
  ext {
    springBootVersion = '1.3.2.RELEASE'
    elasticSearchVersion = '2.2.0'
    groovyVersion = '2.4.5'
  }
  repositories {
    jcenter()
    mavenCentral()
  }
  dependencies {
    classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    classpath 'io.spring.gradle:dependency-management-plugin:0.5.5.RELEASE'
    classpath 'com.github.ben-manes:gradle-versions-plugin:0.12.0'
    classpath 'org.kordamp.gradle:stats-gradle-plugin:0.1.5'
  }
}

apply plugin: 'java'
apply plugin: 'groovy'
apply plugin: 'eclipse-wtp'
apply plugin: 'idea'
apply plugin: 'spring-boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'com.github.ben-manes.versions'
apply plugin: 'org.kordamp.gradle.stats'

def buildDate = new SimpleDateFormat('yyyyMMdd-hhmmss').format(new Date())
version = '1.0.RC1.' + buildDate

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
  jcenter()
  mavenCentral()
  maven { url "https://repo.spring.io/snapshot" }
  maven { url "https://repo.spring.io/milestone" }
}

ext['elasticsearch.version'] = elasticSearchVersion
ext['groovy.version'] = groovyVersion
ext['guava.version'] = '18.0'
ext['lombok.version'] = '1.16.6'

dependencyManagement {
  imports {
    mavenBom "org.springframework.boot:spring-boot-starter-parent:${springBootVersion}"
    mavenBom "org.springframework.cloud:spring-cloud-starter-parent:Brixton.M5"
    mavenBom 'io.spring.platform:platform-bom:2.0.2.RELEASE'
  }
}

dependencies {
  compile('org.springframework.boot:spring-boot-starter-actuator')
  compile('org.springframework.boot:spring-boot-starter-aop')
  compile('org.springframework.boot:spring-boot-starter-cache')
  compile('org.springframework.cloud:spring-cloud-starter-hystrix')    
  compile 'org.jadira.usertype:usertype.extended:5.0.0.GA'
  compile('org.springframework.boot:spring-boot-starter-data-jpa')
  compile('org.springframework.boot:spring-boot-starter-data-rest')
  //compile('org.springframework.data:spring-data-rest-hal-browser')
  compile('org.springframework.boot:spring-boot-devtools')
  compile('org.springframework.boot:spring-boot-starter-hateoas')
  compile('org.projectlombok:lombok')
  compile('org.springframework.boot:spring-boot-starter-thymeleaf')
  compile('org.springframework.boot:spring-boot-starter-web')
  compile "org.elasticsearch:elasticsearch:${elasticSearchVersion}"
  compile 'commons-lang:commons-lang'
  compile 'commons-codec:commons-codec'
  compile 'commons-collections:commons-collections'
  compile 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310'
  compile 'org.springframework.boot:spring-boot-starter-freemarker'  
  compile 'de.codecentric:spring-boot-admin-starter-client:1.3.2'    
  compile 'org.flywaydb:flyway-core'    
  compile('com.domingosuarez:oneltico:0.1.2')
  compile("org.springframework:spring-jms")
  compile("org.apache.activemq:activemq-broker")
  compile 'org.apache.activemq:activemq-pool'    
  compile 'org.springframework.cloud:spring-cloud-starter-eureka'
  compile 'com.mashape.unirest:unirest-java:1.4.9'      
  runtime "org.postgresql:postgresql:9.4-1203-jdbc42"
  testCompile('org.springframework.boot:spring-boot-starter-test')
}

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.8'
  }
}

springBoot {
  executable = true
}
我取出插件,它就可以正确执行了


我知道这应该是一个Windows问题,但我如何才能给出解决方案呢?

蒂姆·耶茨说得对,谢谢

我从链接中获取代码并将其粘贴到build.gradle文件的末尾,它就像宝石一样工作

我添加的代码是:

task pathingJar(type: Jar) {
    dependsOn configurations.runtime
    appendix = 'pathing'

    doFirst {
        manifest {
            attributes "Class-Path": configurations.runtime.files.collect {
                it.toURL().toString().replaceFirst('/file:/+/', '/')
                }.join(' ')
        }
    }
}

bootRun {
    dependsOn pathingJar
    doFirst {
        classpath = files("$buildDir/classes/main", "$buildDir/resources/main", pathingJar.archivePath)
    }
}

注意:我从链接代码中添加了一些简单的引号('),以使其正常工作。

谢谢tim_yates!我在这一行添加了简单的引号:it.toURL().toString().replaceFirst('/file://+/','/'))