我有一个使用 Spring Boot + Vaadin 的 Gradle 项目。Spring Boot 和 Vaadin 的 Gradle 插件配置如下:
buildscript {
ext {
springBootVersion = '1.3.7.RELEASE'
}
...
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
classpath "fi.jasoft.plugin:gradle-vaadin-plugin:0.11.1"
}
}
Vaadin 版本指定如下:
vaadin {
version '7.6.8'
widgetset 'com.vaadin.DefaultWidgetSet'
}
Vaadin 依赖项指定如下:
dependencies {
compile 'com.vaadin:vaadin-spring-boot-starter:1.0.0'
compile 'com.vaadin:vaadin-server:${vaadin.version}'
compile 'com.vaadin:vaadin-client:${vaadin.version}'
...
}
这工作正常,但只要我将 Spring Boot 版本更改为
springBootVersion = '1.4.0.RELEASE'
然后我得到错误:
索引 89 处路径中的非法字符: https : //oss.sonatype.org/content/repositories/vaadin-snapshots/com/vaadin/vaadin-server/${vaadin.version}/vaadin-server-${vaadin.version }.pom
更新
Groovy(Gradle 使用)仅在使用双引号 (") 时才支持字符串插值,因此将 Vaadin 依赖项更改为
dependencies {
compile "com.vaadin:vaadin-spring-boot-starter:1.0.0"
compile "com.vaadin:vaadin-server:${vaadin.version}"
compile "com.vaadin:vaadin-client:${vaadin.version}"
...
}
修复它。现在真正的问题是,如果我将 Spring Boot 降级为1.3.7-RELEASE
.