110 references to JavaBuildTool
Aspire.Hosting.Java (81)
JavaBuildResource.cs (2)
21
internal sealed class JavaBuildResource(string name, string wrapperPath, string workingDirectory,
JavaBuildTool
tool)
27
public
JavaBuildTool
Tool { get; } = tool;
JavaBuildToolAnnotation.cs (6)
25
internal sealed class JavaBuildToolAnnotation(
JavaBuildTool
tool, string[] args) : IResourceAnnotation
30
public
JavaBuildTool
Tool { get; } = tool;
51
internal sealed record JavaBuildStepAnnotation(string? ResourceName,
JavaBuildTool
Tool, string[] Args) : IResourceAnnotation;
74
internal (string[] BuildArgs, string[] LaunchArgs) GetConfiguration(
JavaBuildTool
tool) => tool switch
76
JavaBuildTool
.Maven => (MavenBuildArgs, MavenLaunchArgs),
77
JavaBuildTool
.Gradle => (GradleBuildArgs, GradleLaunchArgs),
JavaBuildToolResolver.cs (13)
26
internal static
JavaBuildTool
? Detect(
46
(true, false) =>
JavaBuildTool
.Maven,
47
(false, true) =>
JavaBuildTool
.Gradle,
67
internal static string ResolveWrapperPath(JavaAppResource resource,
JavaBuildTool
tool, bool isWindows)
82
private static string? FindWrapperInBuildRoot(string appDirectory, string wrapperName,
JavaBuildTool
tool)
112
private static bool IsBuildRoot(string directory,
JavaBuildTool
tool) => tool switch
116
JavaBuildTool
.Gradle => File.Exists(Path.Combine(directory, "settings.gradle"))
120
JavaBuildTool
.Maven => File.Exists(Path.Combine(directory, "pom.xml")),
192
internal static string GetDefaultWrapperName(
JavaBuildTool
tool, bool isWindows) => (tool, isWindows) switch
194
(
JavaBuildTool
.Maven, true) => "mvnw.cmd",
195
(
JavaBuildTool
.Maven, false) => "mvnw",
196
(
JavaBuildTool
.Gradle, true) => "gradlew.bat",
197
(
JavaBuildTool
.Gradle, false) => "gradlew",
JavaDockerfileGenerator.cs (22)
98
internal static (
JavaBuildTool
Tool, string[] Args) ResolveBuildTool(JavaAppResource resource, string appDirectory)
450
private static
JavaBuildTool
? DetectBuildToolForPublish(JavaAppResource resource, string appDirectory)
646
JavaBuildTool
Tool,
694
JavaBuildTool
.Maven => ("target/*.jar", "/root/.m2", "repository", (string?)null, ".mvn", "-B -ntp --version"),
695
JavaBuildTool
.Gradle => ("build/libs/*.jar", "/root/.gradle", "caches", "GRADLE_USER_HOME", "gradle", "--no-daemon --version"),
703
var outputDirectory = tool is
JavaBuildTool
.Gradle ? "build" : "target";
705
var requiresUnzip = tool is
JavaBuildTool
.Maven
770
private static bool SelectsDependenciesByBuildArchitecture(string appDirectory,
JavaBuildTool
tool)
772
string[] fileNames = tool is
JavaBuildTool
.Gradle
839
private static (int Minimum, int Maximum) ResolveBuildJdkBounds(string appDirectory, string wrapperSupportPath,
JavaBuildTool
tool)
875
var match = (tool is
JavaBuildTool
.Gradle ? GradleDistributionRegex() : MavenDistributionRegex()).Match(distributionUrl);
881
if (tool is
JavaBuildTool
.Maven)
984
JavaBuildTool
tool,
1031
private static string ResolveWrapperForContext(JavaAppResource resource, string appDirectory,
JavaBuildTool
tool)
1103
internal static (
JavaBuildTool
Tool, string[] Args) ResolveToolAndArgs(JavaAppResource resource, string appDirectory)
1123
private static string[] WithoutGradleDaemon(
JavaBuildTool
tool, string[] args)
1125
if (tool is not
JavaBuildTool
.Gradle
1137
private static (
JavaBuildTool
Tool, string[] Args) ResolveConfiguredToolAndArgs(JavaAppResource resource, string appDirectory)
1148
var
tool = resource.TryGetLastAnnotation<JavaBuildToolAnnotation>(out var launch)
1181
private static string[] DefaultPackageArgs(
JavaBuildTool
tool) => tool switch
1186
JavaBuildTool
.Maven => ["-B", "-ntp", "-DskipTests", "package"],
1187
JavaBuildTool
.Gradle => ["-x", "test", "build"],
JavaHostingExtensions.cs (35)
43
JavaBuildToolResolver.GetDefaultWrapperName(
JavaBuildTool
.Maven, RuntimeInformation.IsOSPlatform(OSPlatform.Windows));
45
JavaBuildToolResolver.GetDefaultWrapperName(
JavaBuildTool
.Gradle, RuntimeInformation.IsOSPlatform(OSPlatform.Windows));
529
private static
JavaBuildTool
RequireBuildTool(string workingDirectory, string resourceName)
590
private static (
JavaBuildTool
Tool, (string[] BuildArgs, string[] LaunchArgs) Configuration) ResolveDetectedBuildTool(
594
var
tool = TryResolveConfiguredBuildTool(resource, out
var
configuredTool)
601
private static bool TryResolveConfiguredBuildTool(JavaAppResource resource, out
JavaBuildTool
tool)
650
return builder.WithBuildToolLaunch(
JavaBuildTool
.Maven, goal, args, nameof(WithMavenGoal));
678
return builder.WithBuildToolLaunch(
JavaBuildTool
.Gradle, task, args, nameof(WithGradleTask));
683
JavaBuildTool
tool,
761
JavaBuildTool
.Maven,
794
JavaBuildTool
.Gradle,
801
JavaBuildTool
tool,
1145
JavaBuildTool
tool;
1162
var outputDirectory = tool is
JavaBuildTool
.Gradle ? "build" : "target";
1309
if (!TryResolveConfiguredBuildTool(builder.Resource, out
var
tool))
1322
buildResourceName: $"{builder.Resource.Name}-{(tool is
JavaBuildTool
.Gradle ? "gradle" : "maven")}-build",
1330
private static string[] DefaultBuildArgs(
JavaBuildTool
tool) =>
1331
tool is
JavaBuildTool
.Gradle ? ["clean", "build"] : ["clean", "package"];
1385
JavaBuildTool
tool;
1483
private static (string Command, string[] LeadingArgs) ResolveWrapperInvocation(JavaAppResource resource,
JavaBuildTool
tool)
1526
private static void ValidateWrapperExists(JavaAppResource resource,
JavaBuildTool
tool)
1557
JavaBuildTool
tool) where T : JavaAppResource
1578
internal static string GenerateWrapperCommand(
JavaBuildTool
tool) => tool switch
1582
JavaBuildTool
.Maven => "'mvn -N wrapper:wrapper'",
1583
JavaBuildTool
.Gradle => "'gradle wrapper'",
1783
BuildTool = TryResolveConfiguredBuildTool(builder.Resource, out
var
buildTool)
1861
if (!TryResolveConfiguredBuildTool(resource, out
var
buildTool))
1870
JavaBuildTool
.Maven => Path.Combine(resource.WorkingDirectory, "target"),
1871
JavaBuildTool
.Gradle => Path.Combine(resource.WorkingDirectory, "build", "libs"),
1943
|| !TryResolveConfiguredBuildTool(resource, out
var
buildTool))
1950
buildTool is
JavaBuildTool
.Gradle ? "build" : "target",
1983
if (!TryResolveConfiguredBuildTool(resource, out
var
buildTool))
1990
JavaBuildTool
.Maven => TryReadMavenArtifactId(Path.Combine(resource.WorkingDirectory, "pom.xml")),
1991
JavaBuildTool
.Gradle => TryReadGradleProjectName(resource.WorkingDirectory),
JavaVersionDetector.cs (2)
39
public static string Detect(string appDirectory,
JavaBuildTool
? tool = null)
41
string?[] candidates = tool is
JavaBuildTool
.Gradle
JavaWrapperValidationAnnotation.cs (1)
16
internal sealed record JavaWrapperValidationAnnotation(
JavaBuildTool
Tool) : IResourceAnnotation;
Aspire.Hosting.Java.Tests (29)
AddJavaAppPublishTests.cs (6)
674
var
tool = toolName is "gradle" ?
JavaBuildTool
.Gradle :
JavaBuildTool
.Maven;
691
Assert.Equal("17", JavaVersionDetector.Detect(appDirectory.Path,
JavaBuildTool
.Gradle));
806
Assert.Equal(
JavaBuildTool
.Gradle, tool);
824
Assert.Equal(
JavaBuildTool
.Gradle, tool);
AddJavaAppTests.cs (9)
1035
Assert.Equal(
JavaBuildTool
.Maven, Assert.IsType<JavaBuildResource>(builder.Resources.First(r => r.Name == "api-maven-build")).Tool);
1048
Assert.Equal(
JavaBuildTool
.Maven, Assert.IsType<JavaBuildResource>(buildResource).Tool);
1061
Assert.Equal(
JavaBuildTool
.Gradle, Assert.IsType<JavaBuildResource>(builder.Resources.First(r => r.Name == "api-gradle-build")).Tool);
1074
Assert.Equal(
JavaBuildTool
.Gradle, Assert.IsType<JavaBuildResource>(buildResource).Tool);
1102
[InlineData(nameof(
JavaBuildTool
.Maven), true)]
1103
[InlineData(nameof(
JavaBuildTool
.Maven), false)]
1104
[InlineData(nameof(
JavaBuildTool
.Gradle), true)]
1105
[InlineData(nameof(
JavaBuildTool
.Gradle), false)]
1112
if (toolName is nameof(
JavaBuildTool
.Maven))
AddSpringBootAppTests.cs (3)
78
var
runTool = Assert.Single(runApp.Resource.Annotations.OfType<JavaBuildToolAnnotation>()).Tool;
84
Assert.Equal(
JavaBuildTool
.Gradle, runTool);
389
Assert.Equal(
JavaBuildTool
.Maven, Assert.IsType<JavaBuildResource>(buildResource).Tool);
JavaBuildToolResolverTests.cs (11)
11
[InlineData(nameof(
JavaBuildTool
.Maven), false, "mvnw")]
12
[InlineData(nameof(
JavaBuildTool
.Maven), true, "mvnw.cmd")]
13
[InlineData(nameof(
JavaBuildTool
.Gradle), false, "gradlew")]
14
[InlineData(nameof(
JavaBuildTool
.Gradle), true, "gradlew.bat")]
22
var
tool = Enum.Parse<
JavaBuildTool
>(toolName);
38
var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(app.Resource,
JavaBuildTool
.Maven, isWindows);
52
var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource,
JavaBuildTool
.Maven, isWindows: false);
76
var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource,
JavaBuildTool
.Maven, isWindows: false);
103
var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource,
JavaBuildTool
.Maven, isWindows: false);
127
var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource,
JavaBuildTool
.Maven, isWindows: false);