Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
爱吃血肠
spring-framework
提交
e9523161
S
spring-framework
项目概览
爱吃血肠
/
spring-framework
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
spring-framework
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
e9523161
编写于
8月 20, 2019
作者:
B
Brian Clozel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "Revert "Refactor Gradle tasks in Spring Framework build""
This reverts commit
fb0d6187
.
上级
fb0d6187
变更
15
隐藏空白更改
内联
并排
Showing
15 changed file
with
172 addition
and
181 deletion
+172
-181
build.gradle
build.gradle
+19
-81
gradle/docs.gradle
gradle/docs.gradle
+74
-100
gradle/spring-module.gradle
gradle/spring-module.gradle
+52
-0
integration-tests/integration-tests.gradle
integration-tests/integration-tests.gradle
+2
-0
spring-beans/spring-beans.gradle
spring-beans/spring-beans.gradle
+1
-0
spring-context/spring-context.gradle
spring-context/spring-context.gradle
+1
-0
spring-core-coroutines/spring-core-coroutines.gradle
spring-core-coroutines/spring-core-coroutines.gradle
+7
-0
spring-core/spring-core.gradle
spring-core/spring-core.gradle
+2
-0
spring-framework-bom/spring-framework-bom.gradle
spring-framework-bom/spring-framework-bom.gradle
+2
-0
spring-jdbc/spring-jdbc.gradle
spring-jdbc/spring-jdbc.gradle
+2
-0
spring-messaging/spring-messaging.gradle
spring-messaging/spring-messaging.gradle
+2
-0
spring-test/spring-test.gradle
spring-test/spring-test.gradle
+2
-0
spring-web/spring-web.gradle
spring-web/spring-web.gradle
+2
-0
spring-webflux/spring-webflux.gradle
spring-webflux/spring-webflux.gradle
+2
-0
spring-webmvc/spring-webmvc.gradle
spring-webmvc/spring-webmvc.gradle
+2
-0
未找到文件。
build.gradle
浏览文件 @
e9523161
...
@@ -14,20 +14,13 @@ plugins {
...
@@ -14,20 +14,13 @@ plugins {
id
'org.springframework.build.test-sources'
apply
false
id
'org.springframework.build.test-sources'
apply
false
id
"io.spring.dependency-management"
version
"1.0.7.RELEASE"
apply
false
id
"io.spring.dependency-management"
version
"1.0.7.RELEASE"
apply
false
id
"org.jetbrains.kotlin.jvm"
version
"1.3.41"
apply
false
id
"org.jetbrains.kotlin.jvm"
version
"1.3.41"
apply
false
id
"org.jetbrains.dokka"
version
"0.9.18"
id
"org.jetbrains.dokka"
version
"0.9.18"
apply
false
id
"org.asciidoctor.convert"
version
"1.5.8"
id
"org.asciidoctor.convert"
version
"1.5.8"
}
}
ext
{
ext
{
linkHomepage
=
"https://spring.io/projects/spring-framework"
linkCi
=
"https://build.spring.io/browse/SPR"
linkIssue
=
"https://github.com/spring-projects/spring-framework/issues"
linkScmUrl
=
"https://github.com/spring-projects/spring-framework"
linkScmConnection
=
"scm:git:git://github.com/spring-projects/spring-framework.git"
linkScmDevConnection
=
"scm:git:ssh://git@github.com:spring-projects/spring-framework.git"
moduleProjects
=
subprojects
.
findAll
{
moduleProjects
=
subprojects
.
findAll
{
(
it
.
name
!=
"spring-framework-bom"
)
&&
(
it
.
name
!=
"spring-core-coroutines"
)
(
it
.
name
!=
"spring-framework-bom"
)
&&
(
it
.
name
!=
"spring-core-coroutines"
)
&&
(
it
.
name
!=
"integration-tests"
)
}
}
aspectjVersion
=
"1.9.4"
aspectjVersion
=
"1.9.4"
...
@@ -51,7 +44,6 @@ ext {
...
@@ -51,7 +44,6 @@ ext {
tomcatVersion
=
"9.0.22"
tomcatVersion
=
"9.0.22"
undertowVersion
=
"2.0.23.Final"
undertowVersion
=
"2.0.23.Final"
gradleScriptDir
=
"${rootProject.projectDir}/gradle"
withoutJclOverSlf4j
=
{
withoutJclOverSlf4j
=
{
exclude
group:
"org.slf4j"
,
module:
"jcl-over-slf4j"
exclude
group:
"org.slf4j"
,
module:
"jcl-over-slf4j"
}
}
...
@@ -61,13 +53,10 @@ configure(allprojects) { project ->
...
@@ -61,13 +53,10 @@ configure(allprojects) { project ->
group
=
"org.springframework"
group
=
"org.springframework"
apply
plugin:
"java"
apply
plugin:
"java"
apply
plugin:
"kotlin"
apply
plugin:
"checkstyle"
apply
plugin:
"checkstyle"
apply
plugin:
'org.springframework.build.compile'
apply
plugin:
'org.springframework.build.compile'
apply
plugin:
'org.springframework.build.optional-dependencies'
apply
plugin:
'org.springframework.build.test-sources'
apply
plugin:
"io.spring.dependency-management"
apply
plugin:
"io.spring.dependency-management"
apply
from:
"${
gradleScriptDir}
/ide.gradle"
apply
from:
"${
rootDir}/gradle
/ide.gradle"
dependencyManagement
{
dependencyManagement
{
resolutionStrategy
{
resolutionStrategy
{
...
@@ -96,17 +85,19 @@ configure(allprojects) { project ->
...
@@ -96,17 +85,19 @@ configure(allprojects) { project ->
}
}
}
}
compileKotlin
{
pluginManager
.
withPlugin
(
"kotlin"
)
{
kotlinOptions
{
apply
plugin:
"org.jetbrains.dokka"
jvmTarget
=
"1.8"
compileKotlin
{
freeCompilerArgs
=
[
"-Xjsr305=strict"
]
kotlinOptions
{
jvmTarget
=
"1.8"
freeCompilerArgs
=
[
"-Xjsr305=strict"
]
}
}
}
}
compileTestKotlin
{
kotlinOptions
{
compileTestKotlin
{
jvmTarget
=
"1.8"
kotlinOptions
{
freeCompilerArgs
=
[
"-Xjsr305=strict"
]
jvmTarget
=
"1.8"
}
freeCompilerArgs
=
[
"-Xjsr305=strict"
]
}
}
}
}
...
@@ -179,67 +170,18 @@ configure(allprojects) { project ->
...
@@ -179,67 +170,18 @@ configure(allprojects) { project ->
]
as
String
[]
]
as
String
[]
}
}
configure
(
subprojects
.
findAll
{
(
it
.
name
!=
"spring-core-coroutines"
configure
(
moduleProjects
)
{
project
->
&&
it
.
name
!=
"spring-integration-tests"
)
}
)
{
subproject
->
apply
from:
"${rootDir}/gradle/spring-module.gradle"
apply
from:
"${gradleScriptDir}/publish-maven.gradle"
jar
{
manifest
.
attributes
[
"Implementation-Title"
]
=
subproject
.
name
manifest
.
attributes
[
"Implementation-Version"
]
=
subproject
.
version
manifest
.
attributes
[
"Automatic-Module-Name"
]
=
subproject
.
name
.
replace
(
'-'
,
'.'
)
// for Jigsaw
manifest
.
attributes
[
"Created-By"
]
=
"${System.getProperty("
java
.
version
")} (${System.getProperty("
java
.
specification
.
vendor
")})"
from
(
"${rootProject.projectDir}/src/docs/dist"
)
{
include
"license.txt"
include
"notice.txt"
into
"META-INF"
expand
(
copyright:
new
Date
().
format
(
"yyyy"
),
version:
project
.
version
)
}
}
javadoc
{
description
=
"Generates project-level javadoc for use in -javadoc jar"
options
.
encoding
=
"UTF-8"
options
.
memberLevel
=
org
.
gradle
.
external
.
javadoc
.
JavadocMemberLevel
.
PROTECTED
options
.
author
=
true
options
.
header
=
project
.
name
options
.
use
=
true
options
.
links
(
project
.
ext
.
javadocLinks
)
options
.
addStringOption
(
"Xdoclint:none"
,
"-quiet"
)
// Suppress warnings due to cross-module @see and @link references.
// Note that global 'api' task does display all warnings.
logging
.
captureStandardError
LogLevel
.
INFO
logging
.
captureStandardOutput
LogLevel
.
INFO
// suppress "## warnings" message
}
task
sourcesJar
(
type:
Jar
,
dependsOn:
classes
)
{
duplicatesStrategy
=
DuplicatesStrategy
.
EXCLUDE
classifier
=
"sources"
from
sourceSets
.
main
.
allSource
// Don't include or exclude anything explicitly by default. See SPR-12085.
}
task
javadocJar
(
type:
Jar
)
{
classifier
=
"javadoc"
from
javadoc
}
artifacts
{
archives
sourcesJar
archives
javadocJar
}
}
}
configure
(
rootProject
)
{
configure
(
rootProject
)
{
description
=
"Spring Framework"
description
=
"Spring Framework"
apply
plugin:
"groovy"
apply
plugin:
"groovy"
apply
plugin:
"kotlin"
apply
plugin:
"io.spring.nohttp"
apply
plugin:
"io.spring.nohttp"
apply
plugin:
'org.springframework.build.api-diff'
apply
plugin:
'org.springframework.build.api-diff'
apply
from:
"${
gradleScriptDir}
/docs.gradle"
apply
from:
"${
rootDir}/gradle
/docs.gradle"
nohttp
{
nohttp
{
source
.
exclude
"**/test-output/**"
source
.
exclude
"**/test-output/**"
...
@@ -258,9 +200,6 @@ configure(rootProject) {
...
@@ -258,9 +200,6 @@ configure(rootProject) {
}
}
}
}
// Don't publish the default jar for the root project
configurations
.
archives
.
artifacts
.
clear
()
dependencies
{
dependencies
{
asciidoctor
(
"io.spring.asciidoctor:spring-asciidoctor-extensions:0.1.3.RELEASE"
)
asciidoctor
(
"io.spring.asciidoctor:spring-asciidoctor-extensions:0.1.3.RELEASE"
)
}
}
...
@@ -270,6 +209,5 @@ configure(rootProject) {
...
@@ -270,6 +209,5 @@ configure(rootProject) {
archives
schemaZip
archives
schemaZip
archives
distZip
archives
distZip
}
}
}
}
gradle/docs.gradle
浏览文件 @
e9523161
/*
/**
* Copyright 2002-2019 the original author or authors.
* Produce Javadoc for all Spring Framework modules in "build/docs/javadoc"
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
*/
task
api
(
type:
Javadoc
)
{
task
api
(
type:
Javadoc
)
{
group
=
"Documentation"
group
=
"Documentation"
description
=
"Generates aggregated Javadoc API documentation."
description
=
"Generates aggregated Javadoc API documentation."
title
=
"${rootProject.description} ${version} API"
title
=
"${rootProject.description} ${version} API"
dependsOn
{
dependsOn
{
subp
rojects
.
collect
{
moduleP
rojects
.
collect
{
it
.
tasks
.
getByName
(
"jar"
)
it
.
tasks
.
getByName
(
"jar"
)
}
}
}
}
options
.
encoding
=
"UTF-8"
options
.
memberLevel
=
org
.
gradle
.
external
.
javadoc
.
JavadocMemberLevel
.
PROTECTED
options
.
author
=
true
options
.
header
=
rootProject
.
description
options
.
use
=
true
options
.
overview
=
"src/docs/api/overview.html"
options
.
stylesheetFile
=
file
(
"src/docs/api/stylesheet.css"
)
options
.
splitIndex
=
true
options
.
links
(
project
.
ext
.
javadocLinks
)
options
.
addStringOption
(
'Xdoclint:none'
,
'-quiet'
)
source
subprojects
.
collect
{
project
->
project
.
sourceSets
.
main
.
allJava
}
maxMemory
=
"1024m"
destinationDir
=
new
File
(
buildDir
,
"api"
)
doFirst
{
doFirst
{
classpath
=
files
(
classpath
=
files
(
// ensure the javadoc process can resolve types compiled from .aj sources
// ensure the javadoc process can resolve types compiled from .aj sources
project
(
":spring-aspects"
).
sourceSets
.
main
.
output
project
(
":spring-aspects"
).
sourceSets
.
main
.
output
)
)
classpath
+=
files
(
subprojects
.
collect
{
it
.
sourceSets
.
main
.
compileClasspath
})
classpath
+=
files
(
moduleProjects
.
collect
{
it
.
sourceSets
.
main
.
compileClasspath
})
}
options
{
encoding
=
"UTF-8"
memberLevel
=
JavadocMemberLevel
.
PROTECTED
author
=
true
header
=
rootProject
.
description
use
=
true
overview
=
"src/docs/api/overview.html"
stylesheetFile
=
file
(
"src/docs/api/stylesheet.css"
)
splitIndex
=
true
links
(
project
.
ext
.
javadocLinks
)
addStringOption
(
'Xdoclint:none'
,
'-quiet'
)
if
(
JavaVersion
.
current
().
isJava9Compatible
())
{
addBooleanOption
(
'html5'
,
true
)
}
}
}
source
moduleProjects
.
collect
{
project
->
project
.
sourceSets
.
main
.
allJava
}
maxMemory
=
"1024m"
destinationDir
=
file
(
"$buildDir/docs/javadoc"
)
}
}
/**
* Produce KDoc for all Spring Framework modules in "build/docs/kdoc"
*/
dokka
{
dokka
{
dependsOn
{
dependsOn
{
tasks
.
getByName
(
"api"
)
tasks
.
getByName
(
"api"
)
}
}
doFirst
{
doFirst
{
classpath
=
subprojects
.
collect
{
project
->
project
.
jar
.
outputs
.
files
.
getFiles
()
}.
flatten
()
classpath
=
moduleProjects
.
collect
{
project
->
project
.
jar
.
outputs
.
files
.
getFiles
()
}.
flatten
()
classpath
+=
files
(
subprojects
.
collect
{
it
.
sourceSets
.
main
.
compileClasspath
})
classpath
+=
files
(
moduleProjects
.
collect
{
it
.
sourceSets
.
main
.
compileClasspath
})
sourceDirs
=
files
(
moduleProjects
.
findAll
{
it
.
pluginManager
.
hasPlugin
(
"kotlin"
)
}
.
collect
{
project
->
def
kotlinDirs
=
project
.
sourceSets
.
main
.
kotlin
.
srcDirs
.
collect
()
kotlinDirs
-=
project
.
sourceSets
.
main
.
java
.
srcDirs
})
}
}
moduleName
=
"spring-framework"
moduleName
=
"spring-framework"
outputFormat
=
"html"
outputFormat
=
"html"
outputDirectory
=
"$buildDir/docs/kdoc"
outputDirectory
=
"$buildDir/docs/kdoc"
sourceDirs
=
files
(
subprojects
.
collect
{
project
->
def
kotlinDirs
=
project
.
sourceSets
.
main
.
kotlin
.
srcDirs
.
collect
()
kotlinDirs
-=
project
.
sourceSets
.
main
.
java
.
srcDirs
})
externalDocumentationLink
{
externalDocumentationLink
{
url
=
new
URL
(
"https://docs.spring.io/spring-framework/docs/$version/javadoc-api/"
)
url
=
new
URL
(
"https://docs.spring.io/spring-framework/docs/$version/javadoc-api/"
)
packageListUrl
=
new
File
(
buildDir
,
"
api
/package-list"
).
toURI
().
toURL
()
packageListUrl
=
new
File
(
buildDir
,
"
docs/javadoc
/package-list"
).
toURI
().
toURL
()
}
}
externalDocumentationLink
{
externalDocumentationLink
{
url
=
new
URL
(
"https://projectreactor.io/docs/core/release/api/"
)
url
=
new
URL
(
"https://projectreactor.io/docs/core/release/api/"
)
...
@@ -101,6 +97,10 @@ task extractDocResources(type: Sync) {
...
@@ -101,6 +97,10 @@ task extractDocResources(type: Sync) {
into
"$buildDir/asciidoc/build"
into
"$buildDir/asciidoc/build"
}
}
/**
* Produce the Spring Framework Reference documentation
* from "src/docs/asciidoc" into "build/asciidoc/html5"
*/
asciidoctor
{
asciidoctor
{
sourceDir
"$buildDir/asciidoc/build"
sourceDir
"$buildDir/asciidoc/build"
sources
{
sources
{
...
@@ -136,52 +136,54 @@ asciidoctor {
...
@@ -136,52 +136,54 @@ asciidoctor {
asciidoctor
.
dependsOn
extractDocResources
asciidoctor
.
dependsOn
extractDocResources
/**
* Zip all docs (API and reference) into a single archive
*/
task
docsZip
(
type:
Zip
,
dependsOn:
[
'api'
,
'asciidoctor'
,
'dokka'
])
{
task
docsZip
(
type:
Zip
,
dependsOn:
[
'api'
,
'asciidoctor'
,
'dokka'
])
{
group
=
"Distribution"
group
=
"Distribution"
baseName
=
"spring-framework"
description
=
"Builds -${archiveClassifier} archive containing api and reference "
+
classifier
=
"docs"
description
=
"Builds -${classifier} archive containing api and reference "
+
"for deployment at https://docs.spring.io/spring-framework/docs."
"for deployment at https://docs.spring.io/spring-framework/docs."
archiveBaseName
.
set
(
"spring-framework"
)
archiveClassifier
.
set
(
"docs"
)
from
(
"src/dist"
)
{
from
(
"src/dist"
)
{
include
"changelog.txt"
include
"changelog.txt"
}
}
from
(
api
)
{
from
(
api
)
{
into
"javadoc-api"
into
"javadoc-api"
}
}
from
(
"$asciidoctor.outputDir/html5"
)
{
from
(
"$asciidoctor.outputDir/html5"
)
{
into
"spring-framework-reference"
into
"spring-framework-reference"
}
}
from
(
"$asciidoctor.outputDir/pdf"
)
{
from
(
"$asciidoctor.outputDir/pdf"
)
{
into
"spring-framework-reference/pdf"
into
"spring-framework-reference/pdf"
}
}
from
(
dokka
)
{
from
(
dokka
)
{
into
"kdoc-api"
into
"kdoc-api"
}
}
}
}
/**
* Zip all Spring Framework schemas into a single archive
*/
task
schemaZip
(
type:
Zip
)
{
task
schemaZip
(
type:
Zip
)
{
group
=
"Distribution"
group
=
"Distribution"
baseName
=
"spring-framework"
archiveBaseName
.
set
(
"spring-framework"
)
classifier
=
"schema"
archiveClassifier
.
set
(
"schema"
)
description
=
"Builds -${
c
lassifier} archive containing all "
+
description
=
"Builds -${
archiveC
lassifier} archive containing all "
+
"XSDs for deployment at https://springframework.org/schema."
"XSDs for deployment at https://springframework.org/schema."
duplicatesStrategy
'exclude'
duplicatesStrategy
DuplicatesStrategy
.
EXCLUDE
moduleProjects
.
each
{
subproject
->
moduleProjects
.
each
{
module
->
def
Properties
schemas
=
new
Properties
();
def
Properties
schemas
=
new
Properties
();
subproject
.
sourceSets
.
main
.
resources
.
find
{
module
.
sourceSets
.
main
.
resources
.
find
{
it
.
path
.
endsWith
(
"META-INF/spring.schemas"
)
it
.
path
.
endsWith
(
"META-INF/spring.schemas"
)
}?.
withInputStream
{
schemas
.
load
(
it
)
}
}?.
withInputStream
{
schemas
.
load
(
it
)
}
for
(
def
key
:
schemas
.
keySet
())
{
for
(
def
key
:
schemas
.
keySet
())
{
def
shortName
=
key
.
replaceAll
(
/http.*schema.(.*).spring-.*/
,
'$1'
)
def
shortName
=
key
.
replaceAll
(
/http.*schema.(.*).spring-.*/
,
'$1'
)
assert
shortName
!=
key
assert
shortName
!=
key
File
xsdFile
=
subproject
.
sourceSets
.
main
.
resources
.
find
{
File
xsdFile
=
module
.
sourceSets
.
main
.
resources
.
find
{
it
.
path
.
endsWith
(
schemas
.
get
(
key
))
it
.
path
.
endsWith
(
schemas
.
get
(
key
))
}
}
assert
xsdFile
!=
null
assert
xsdFile
!=
null
...
@@ -192,15 +194,19 @@ task schemaZip(type: Zip) {
...
@@ -192,15 +194,19 @@ task schemaZip(type: Zip) {
}
}
}
}
/**
* Create a distribution zip with everything:
* docs, schemas, jars, source jars, javadoc jars
*/
task
distZip
(
type:
Zip
,
dependsOn:
[
docsZip
,
schemaZip
])
{
task
distZip
(
type:
Zip
,
dependsOn:
[
docsZip
,
schemaZip
])
{
group
=
"Distribution"
group
=
"Distribution"
baseName
=
"spring-framework"
archiveBaseName
.
set
(
"spring-framework"
)
classifier
=
"dist"
archiveClassifier
.
set
(
"dist"
)
description
=
"Builds -${
c
lassifier} archive, containing all jars and docs, "
+
description
=
"Builds -${
archiveC
lassifier} archive, containing all jars and docs, "
+
"suitable for community download page."
"suitable for community download page."
ext
.
baseDir
=
"${
b
aseName}-${project.version}"
;
ext
.
baseDir
=
"${
archiveB
aseName}-${project.version}"
;
from
(
"src/docs/dist"
)
{
from
(
"src/docs/dist"
)
{
include
"readme.txt"
include
"readme.txt"
...
@@ -218,49 +224,17 @@ task distZip(type: Zip, dependsOn: [docsZip, schemaZip]) {
...
@@ -218,49 +224,17 @@ task distZip(type: Zip, dependsOn: [docsZip, schemaZip]) {
into
"${baseDir}/schema"
into
"${baseDir}/schema"
}
}
moduleProjects
.
each
{
subproject
->
moduleProjects
.
each
{
module
->
into
(
"${baseDir}/libs"
)
{
into
(
"${baseDir}/libs"
)
{
from
subproject
.
jar
from
module
.
jar
if
(
subproject
.
tasks
.
findByPath
(
"sourcesJar"
))
{
if
(
module
.
tasks
.
findByPath
(
"sourcesJar"
))
{
from
subproject
.
sourcesJar
from
module
.
sourcesJar
}
}
if
(
subproject
.
tasks
.
findByPath
(
"javadocJar"
))
{
if
(
module
.
tasks
.
findByPath
(
"javadocJar"
))
{
from
subproject
.
javadocJar
from
module
.
javadocJar
}
}
}
}
}
}
}
}
distZip
.
mustRunAfter
subprojects
.
test
distZip
.
mustRunAfter
moduleProjects
.
check
// Create a distribution that contains all dependencies (required and optional).
// Not published by default; only for use when building from source.
task
depsZip
(
type:
Zip
,
dependsOn:
distZip
)
{
zipTask
->
group
=
"Distribution"
baseName
=
"spring-framework"
classifier
=
"dist-with-deps"
description
=
"Builds -${classifier} archive, containing everything "
+
"in the -${distZip.classifier} archive plus all runtime dependencies."
from
zipTree
(
distZip
.
archivePath
)
gradle
.
taskGraph
.
whenReady
{
taskGraph
->
if
(
taskGraph
.
hasTask
(
":${zipTask.name}"
))
{
def
projectNames
=
rootProject
.
subprojects
*.
name
def
artifacts
=
new
HashSet
()
subprojects
.
each
{
subproject
->
(
subproject
.
configurations
.
runtime
.
resolvedConfiguration
.
resolvedArtifacts
+
subproject
.
configurations
.
optional
.
resolvedConfiguration
.
resolvedArtifacts
).
each
{
artifact
->
def
dependency
=
artifact
.
moduleVersion
.
id
if
(!
projectNames
.
contains
(
dependency
.
name
))
{
artifacts
<<
artifact
.
file
}
}
}
zipTask
.
from
(
artifacts
)
{
into
"${distZip.baseDir}/deps"
}
}
}
}
gradle/
publish-maven
.gradle
→
gradle/
spring-module
.gradle
浏览文件 @
e9523161
apply
plugin:
'org.springframework.build.compile'
apply
plugin:
'org.springframework.build.optional-dependencies'
apply
plugin:
'org.springframework.build.test-sources'
apply
plugin:
"maven"
apply
plugin:
"maven"
jar
{
manifest
.
attributes
[
"Implementation-Title"
]
=
project
.
name
manifest
.
attributes
[
"Implementation-Version"
]
=
project
.
version
manifest
.
attributes
[
"Automatic-Module-Name"
]
=
project
.
name
.
replace
(
'-'
,
'.'
)
// for Jigsaw
manifest
.
attributes
[
"Created-By"
]
=
"${System.getProperty("
java
.
version
")} (${System.getProperty("
java
.
specification
.
vendor
")})"
from
(
"${rootDir}/src/docs/dist"
)
{
include
"license.txt"
include
"notice.txt"
into
"META-INF"
expand
(
copyright:
new
Date
().
format
(
"yyyy"
),
version:
project
.
version
)
}
}
javadoc
{
description
=
"Generates project-level javadoc for use in -javadoc jar"
options
.
encoding
=
"UTF-8"
options
.
memberLevel
=
JavadocMemberLevel
.
PROTECTED
options
.
author
=
true
options
.
header
=
project
.
name
options
.
use
=
true
options
.
links
(
project
.
ext
.
javadocLinks
)
options
.
addStringOption
(
"Xdoclint:none"
,
"-quiet"
)
// Suppress warnings due to cross-module @see and @link references.
// Note that global 'api' task does display all warnings.
logging
.
captureStandardError
LogLevel
.
INFO
logging
.
captureStandardOutput
LogLevel
.
INFO
// suppress "## warnings" message
}
task
sourcesJar
(
type:
Jar
,
dependsOn:
classes
)
{
duplicatesStrategy
=
DuplicatesStrategy
.
EXCLUDE
archiveClassifier
.
set
(
"sources"
)
from
sourceSets
.
main
.
allSource
// Don't include or exclude anything explicitly by default. See SPR-12085.
}
task
javadocJar
(
type:
Jar
)
{
archiveClassifier
.
set
(
"javadoc"
)
from
javadoc
}
artifacts
{
archives
sourcesJar
archives
javadocJar
}
install
{
install
{
repositories
.
mavenInstaller
{
repositories
.
mavenInstaller
{
customizePom
(
pom
,
project
)
customizePom
(
pom
,
project
)
...
...
integration-tests/integration-tests.gradle
浏览文件 @
e9523161
description
=
"Spring Integration Tests"
description
=
"Spring Integration Tests"
apply
plugin:
"org.springframework.build.test-sources"
dependencies
{
dependencies
{
testCompile
(
project
(
":spring-aop"
))
testCompile
(
project
(
":spring-aop"
))
testCompile
(
project
(
":spring-beans"
))
testCompile
(
project
(
":spring-beans"
))
...
...
spring-beans/spring-beans.gradle
浏览文件 @
e9523161
description
=
"Spring Beans"
description
=
"Spring Beans"
apply
plugin:
"groovy"
apply
plugin:
"groovy"
apply
plugin:
"kotlin"
dependencies
{
dependencies
{
compile
(
project
(
":spring-core"
))
compile
(
project
(
":spring-core"
))
...
...
spring-context/spring-context.gradle
浏览文件 @
e9523161
description
=
"Spring Context"
description
=
"Spring Context"
apply
plugin:
"groovy"
apply
plugin:
"groovy"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
...
...
spring-core-coroutines/spring-core-coroutines.gradle
浏览文件 @
e9523161
description
=
"Spring Core Coroutines support"
description
=
"Spring Core Coroutines support"
apply
plugin:
"kotlin"
dependencies
{
dependencies
{
compile
(
"org.jetbrains.kotlin:kotlin-reflect"
)
compile
(
"org.jetbrains.kotlin:kotlin-reflect"
)
compile
(
"org.jetbrains.kotlin:kotlin-stdlib"
)
compile
(
"org.jetbrains.kotlin:kotlin-stdlib"
)
...
@@ -8,6 +10,11 @@ dependencies {
...
@@ -8,6 +10,11 @@ dependencies {
compile
(
"org.jetbrains.kotlinx:kotlinx-coroutines-reactor"
)
compile
(
"org.jetbrains.kotlinx:kotlinx-coroutines-reactor"
)
}
}
// Avoid publishing coroutines JAR to the artifact repository
if
(
project
.
hasProperty
(
"artifactoryPublish"
))
{
artifactoryPublish
.
skip
=
true
}
eclipse
{
eclipse
{
project
{
project
{
buildCommand
"org.jetbrains.kotlin.ui.kotlinBuilder"
buildCommand
"org.jetbrains.kotlin.ui.kotlinBuilder"
...
...
spring-core/spring-core.gradle
浏览文件 @
e9523161
description
=
"Spring Core"
description
=
"Spring Core"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
spring-framework-bom/spring-framework-bom.gradle
浏览文件 @
e9523161
description
=
"Spring Framework (Bill of Materials)"
description
=
"Spring Framework (Bill of Materials)"
apply
plugin:
"maven"
configurations
.
archives
.
artifacts
.
clear
()
configurations
.
archives
.
artifacts
.
clear
()
artifacts
{
artifacts
{
// work around GRADLE-2406 by attaching text artifact
// work around GRADLE-2406 by attaching text artifact
...
...
spring-jdbc/spring-jdbc.gradle
浏览文件 @
e9523161
description
=
"Spring JDBC"
description
=
"Spring JDBC"
apply
plugin:
"kotlin"
dependencies
{
dependencies
{
compile
(
project
(
":spring-beans"
))
compile
(
project
(
":spring-beans"
))
compile
(
project
(
":spring-core"
))
compile
(
project
(
":spring-core"
))
...
...
spring-messaging/spring-messaging.gradle
浏览文件 @
e9523161
description
=
"Spring Messaging"
description
=
"Spring Messaging"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
spring-test/spring-test.gradle
浏览文件 @
e9523161
description
=
"Spring TestContext Framework"
description
=
"Spring TestContext Framework"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
spring-web/spring-web.gradle
浏览文件 @
e9523161
description
=
"Spring Web"
description
=
"Spring Web"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
spring-webflux/spring-webflux.gradle
浏览文件 @
e9523161
description
=
"Spring WebFlux"
description
=
"Spring WebFlux"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
spring-webmvc/spring-webmvc.gradle
浏览文件 @
e9523161
description
=
"Spring Web MVC"
description
=
"Spring Web MVC"
apply
plugin:
"kotlin"
dependencyManagement
{
dependencyManagement
{
imports
{
imports
{
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
mavenBom
"io.projectreactor:reactor-bom:${reactorVersion}"
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录