我遵循了tutorial。这很好。
我想用一个包含这个spring应用程序的项目创建一个多项目构建。所以我将这个项目添加到这个多项目构建的名为web
的子文件夹中,添加了一个settings.gradle文件:
include 'web'
以及build.gradle文件:
apply plugin: 'application'
mainClassName = "hello.Application"
jar {
baseName = 'VoPro'
}
dependencies {
compile project(':web')
}
然而,当我运行$ gradle build
时,我收到错误:
Could not resolve all dependencies for configuration ':runtime'.
> Cannot resolve external dependency org.springframework.boot:spring-boot-starter-web: because no repositories are defined.
Required by:
:test:unspecified > test:web:unspecified
为什么不能找到任何存储库?
编辑:web
子项目包含以下build.gradle文件(如教程中所示):
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.2.2.RELEASE")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'spring-boot'
jar {
baseName = 'gs-rest-service'
version = '0.1.0'
}
repositories {
mavenCentral()
}
dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
testCompile("junit:junit")
}
task wrapper(type: Wrapper) {
gradleVersion = '1.11'
}
答案 0 :(得分:1)
您应该在 web 项目下添加一个build.gradle
文件,并在那里配置相应的存储库。或者在其中添加全局 build.gradle
和以下代码:
allprojects {
repositories {
mavenCentral()
mavenLocal()
}
}
基本上,多模块项目应具有以下结构
-- build.gradle // all projects configuration
-- settings.gradle //includes all modules
-- module1
-- build.gradle
-- module2
-- build.gradle
-- modulen
-- build.gradle
..
在评论中讨论: 您需要指定依赖项和版本,不知道为什么:
compile("org.springframework.boot:spring-boot-starter-web:1.2.2.RELEASE")