Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
581190d7
Commit
581190d7
authored
Sep 21, 2020
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Test the Gradle plugin against 6.7-rc-1
Closes gh-23425
parent
3a3e2409
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
35 additions
and
7 deletions
+35
-7
MainClassConvention.java
...ringframework/boot/gradle/plugin/MainClassConvention.java
+31
-4
GradleCompatibilityExtension.java
...ework/boot/gradle/junit/GradleCompatibilityExtension.java
+1
-1
GradleBuild.java
.../org/springframework/boot/gradle/testkit/GradleBuild.java
+3
-2
No files found.
spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/MainClassConvention.java
View file @
581190d7
/*
* Copyright 2012-20
19
the original author or authors.
* Copyright 2012-20
20
the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -18,6 +18,7 @@ package org.springframework.boot.gradle.plugin;
import
java.io.File
;
import
java.io.IOException
;
import
java.lang.reflect.Method
;
import
java.util.Objects
;
import
java.util.concurrent.Callable
;
import
java.util.function.Supplier
;
...
...
@@ -26,6 +27,7 @@ import org.gradle.api.InvalidUserDataException;
import
org.gradle.api.Project
;
import
org.gradle.api.file.FileCollection
;
import
org.gradle.api.plugins.JavaApplication
;
import
org.gradle.api.provider.Property
;
import
org.springframework.boot.gradle.dsl.SpringBootExtension
;
import
org.springframework.boot.loader.tools.MainClassFinder
;
...
...
@@ -54,11 +56,36 @@ final class MainClassConvention implements Callable<Object> {
if
(
springBootExtension
!=
null
&&
springBootExtension
.
getMainClassName
()
!=
null
)
{
return
springBootExtension
.
getMainClassName
();
}
String
javaApplicationMainClass
=
getJavaApplicationMainClass
();
return
(
javaApplicationMainClass
!=
null
)
?
javaApplicationMainClass
:
resolveMainClass
();
}
@SuppressWarnings
(
"unchecked"
)
private
String
getJavaApplicationMainClass
()
{
JavaApplication
javaApplication
=
this
.
project
.
getConvention
().
findByType
(
JavaApplication
.
class
);
if
(
javaApplication
!=
null
&&
javaApplication
.
getMainClassName
()
!=
null
)
{
return
javaApplication
.
getMainClassName
();
if
(
javaApplication
==
null
)
{
return
null
;
}
Method
getMainClass
=
findMethod
(
JavaApplication
.
class
,
"getMainClass"
);
if
(
getMainClass
!=
null
)
{
try
{
Property
<
String
>
mainClass
=
(
Property
<
String
>)
getMainClass
.
invoke
(
javaApplication
);
return
mainClass
.
getOrElse
(
null
);
}
catch
(
Exception
ex
)
{
// Continue
}
}
return
javaApplication
.
getMainClassName
();
}
private
static
Method
findMethod
(
Class
<?>
type
,
String
name
)
{
for
(
Method
candidate
:
type
.
getMethods
())
{
if
(
candidate
.
getName
().
equals
(
name
))
{
return
candidate
;
}
}
return
resolveMainClass
()
;
return
null
;
}
private
String
resolveMainClass
()
{
...
...
spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/junit/GradleCompatibilityExtension.java
View file @
581190d7
...
...
@@ -39,7 +39,7 @@ import org.springframework.boot.gradle.testkit.GradleBuildExtension;
public
final
class
GradleCompatibilityExtension
implements
TestTemplateInvocationContextProvider
{
private
static
final
List
<
String
>
GRADLE_VERSIONS
=
Arrays
.
asList
(
"default"
,
"5.0"
,
"5.1.1"
,
"5.2.1"
,
"5.3.1"
,
"5.4.1"
,
"5.5.1"
,
"5.6.4"
,
"6.0.1"
,
"6.1.1"
,
"6.2.2"
,
"6.3"
,
"6.4"
,
"6.5.1"
,
"6.6"
);
"5.4.1"
,
"5.5.1"
,
"5.6.4"
,
"6.0.1"
,
"6.1.1"
,
"6.2.2"
,
"6.3"
,
"6.4"
,
"6.5.1"
,
"6.6"
,
"6.7-rc-1"
);
@Override
public
Stream
<
TestTemplateInvocationContext
>
provideTestTemplateInvocationContexts
(
ExtensionContext
context
)
{
...
...
spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/testkit/GradleBuild.java
View file @
581190d7
...
...
@@ -86,8 +86,9 @@ public class GradleBuild {
}
private
List
<
File
>
pluginClasspath
()
{
return
Arrays
.
asList
(
new
File
(
"bin"
),
new
File
(
"build/classes/java/main"
),
new
File
(
"build/resources/main"
),
new
File
(
pathOfJarContaining
(
LaunchScript
.
class
)),
new
File
(
pathOfJarContaining
(
ClassVisitor
.
class
)),
return
Arrays
.
asList
(
new
File
(
"bin/main"
),
new
File
(
"build/classes/java/main"
),
new
File
(
"build/resources/main"
),
new
File
(
pathOfJarContaining
(
LaunchScript
.
class
)),
new
File
(
pathOfJarContaining
(
ClassVisitor
.
class
)),
new
File
(
pathOfJarContaining
(
DependencyManagementPlugin
.
class
)),
new
File
(
pathOfJarContaining
(
PropertiesKt
.
class
)),
new
File
(
pathOfJarContaining
(
KotlinLogger
.
class
)),
new
File
(
pathOfJarContaining
(
KotlinPlugin
.
class
)),
new
File
(
pathOfJarContaining
(
KotlinProject
.
class
)),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment