115 references to JavaBuildTool
Aspire.Hosting.Java (82)
JavaBuildResource.cs (2)
21internal sealed class JavaBuildResource(string name, string wrapperPath, string workingDirectory, JavaBuildTool tool) 27public JavaBuildTool Tool { get; } = tool;
JavaBuildToolAnnotation.cs (6)
25internal sealed class JavaBuildToolAnnotation(JavaBuildTool tool, string[] args) : IResourceAnnotation 30public JavaBuildTool Tool { get; } = tool; 51internal sealed record JavaBuildStepAnnotation(string? ResourceName, JavaBuildTool Tool, string[] Args) : IResourceAnnotation; 74internal (string[] BuildArgs, string[] LaunchArgs) GetConfiguration(JavaBuildTool tool) => tool switch 76JavaBuildTool.Maven => (MavenBuildArgs, MavenLaunchArgs), 77JavaBuildTool.Gradle => (GradleBuildArgs, GradleLaunchArgs),
JavaBuildToolResolver.cs (13)
26internal static JavaBuildTool? Detect( 46(true, false) => JavaBuildTool.Maven, 47(false, true) => JavaBuildTool.Gradle, 67internal static string ResolveWrapperPath(JavaAppResource resource, JavaBuildTool tool, bool isWindows) 82private static string? FindWrapperInBuildRoot(string appDirectory, string wrapperName, JavaBuildTool tool) 112private static bool IsBuildRoot(string directory, JavaBuildTool tool) => tool switch 116JavaBuildTool.Gradle => File.Exists(Path.Combine(directory, "settings.gradle")) 120JavaBuildTool.Maven => File.Exists(Path.Combine(directory, "pom.xml")), 192internal 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)
96internal static (JavaBuildTool Tool, string[] Args) ResolveBuildTool(JavaAppResource resource, string appDirectory) 448private static JavaBuildTool? DetectBuildToolForPublish(JavaAppResource resource, string appDirectory) 645JavaBuildTool Tool, 694JavaBuildTool.Maven => ("target/*.jar", "/root/.m2", "repository", (string?)null, ".mvn", "-B -ntp --version"), 695JavaBuildTool.Gradle => ("build/libs/*.jar", "/root/.gradle", "caches", "GRADLE_USER_HOME", "gradle", "--no-daemon --version"), 703var outputDirectory = tool is JavaBuildTool.Gradle ? "build" : "target"; 705var requiresUnzip = tool is JavaBuildTool.Maven 771private static bool SelectsDependenciesByBuildArchitecture(string appDirectory, JavaBuildTool tool) 773string[] fileNames = tool is JavaBuildTool.Gradle 840private static (int Minimum, int Maximum) ResolveBuildJdkBounds(string appDirectory, string wrapperSupportPath, JavaBuildTool tool) 876var match = (tool is JavaBuildTool.Gradle ? GradleDistributionRegex() : MavenDistributionRegex()).Match(distributionUrl); 882if (tool is JavaBuildTool.Maven) 985JavaBuildTool tool, 1032private static string ResolveWrapperForContext(JavaAppResource resource, string appDirectory, JavaBuildTool tool) 1104internal static (JavaBuildTool Tool, string[] Args) ResolveToolAndArgs(JavaAppResource resource, string appDirectory) 1124private static string[] WithoutGradleDaemon(JavaBuildTool tool, string[] args) 1126if (tool is not JavaBuildTool.Gradle 1138private static (JavaBuildTool Tool, string[] Args) ResolveConfiguredToolAndArgs(JavaAppResource resource, string appDirectory) 1149var tool = resource.TryGetLastAnnotation<JavaBuildToolAnnotation>(out var launch) 1182private static string[] DefaultPackageArgs(JavaBuildTool tool) => tool switch 1187JavaBuildTool.Maven => ["-B", "-ntp", "-DskipTests", "package"], 1188JavaBuildTool.Gradle => ["-x", "test", "build"],
JavaHostingExtensions.cs (35)
40JavaBuildToolResolver.GetDefaultWrapperName(JavaBuildTool.Maven, RuntimeInformation.IsOSPlatform(OSPlatform.Windows)); 42JavaBuildToolResolver.GetDefaultWrapperName(JavaBuildTool.Gradle, RuntimeInformation.IsOSPlatform(OSPlatform.Windows)); 526private static JavaBuildTool RequireBuildTool(string workingDirectory, string resourceName) 587private static (JavaBuildTool Tool, (string[] BuildArgs, string[] LaunchArgs) Configuration) ResolveDetectedBuildTool( 591var tool = TryResolveConfiguredBuildTool(resource, out var configuredTool) 598private static bool TryResolveConfiguredBuildTool(JavaAppResource resource, out JavaBuildTool tool) 647return builder.WithBuildToolLaunch(JavaBuildTool.Maven, goal, args, nameof(WithMavenGoal)); 675return builder.WithBuildToolLaunch(JavaBuildTool.Gradle, task, args, nameof(WithGradleTask)); 680JavaBuildTool tool, 758JavaBuildTool.Maven, 791JavaBuildTool.Gradle, 798JavaBuildTool tool, 1142JavaBuildTool tool; 1159var outputDirectory = tool is JavaBuildTool.Gradle ? "build" : "target"; 1306if (!TryResolveConfiguredBuildTool(builder.Resource, out var tool)) 1319buildResourceName: $"{builder.Resource.Name}-{(tool is JavaBuildTool.Gradle ? "gradle" : "maven")}-build", 1327private static string[] DefaultBuildArgs(JavaBuildTool tool) => 1328tool is JavaBuildTool.Gradle ? ["clean", "build"] : ["clean", "package"]; 1382JavaBuildTool tool; 1480private static (string Command, string[] LeadingArgs) ResolveWrapperInvocation(JavaAppResource resource, JavaBuildTool tool) 1523private static void ValidateWrapperExists(JavaAppResource resource, JavaBuildTool tool) 1554JavaBuildTool tool) where T : JavaAppResource 1575internal static string GenerateWrapperCommand(JavaBuildTool tool) => tool switch 1579JavaBuildTool.Maven => "'mvn -N wrapper:wrapper'", 1580JavaBuildTool.Gradle => "'gradle wrapper'", 1781BuildTool = TryResolveConfiguredBuildTool(builder.Resource, out var buildTool) 1883if (!TryResolveConfiguredBuildTool(resource, out var buildTool)) 1892JavaBuildTool.Maven => Path.Combine(resource.WorkingDirectory, "target"), 1893JavaBuildTool.Gradle => Path.Combine(resource.WorkingDirectory, "build", "libs"), 1965|| !TryResolveConfiguredBuildTool(resource, out var buildTool)) 1972buildTool is JavaBuildTool.Gradle ? "build" : "target", 2005if (!TryResolveConfiguredBuildTool(resource, out var buildTool)) 2012JavaBuildTool.Maven => TryReadMavenArtifactId(Path.Combine(resource.WorkingDirectory, "pom.xml")), 2013JavaBuildTool.Gradle => TryReadGradleProjectName(resource.WorkingDirectory),
JavaVersionDetector.cs (3)
40public static string Detect(string appDirectory, JavaBuildTool? tool = null, string[]? buildArgs = null) 42string?[] candidates = tool is JavaBuildTool.Gradle 53tool is JavaBuildTool.Maven ? buildArgs : null),
JavaWrapperValidationAnnotation.cs (1)
16internal sealed record JavaWrapperValidationAnnotation(JavaBuildTool Tool) : IResourceAnnotation;
Aspire.Hosting.Java.Tests (33)
AddJavaAppPublishTests.cs (10)
653Assert.Equal("25", JavaVersionDetector.Detect(appDirectory.Path, JavaBuildTool.Maven, buildArgs)); 665Assert.Equal("21", JavaVersionDetector.Detect(appDirectory.Path, JavaBuildTool.Maven, buildArgs)); 679Assert.Equal("17", JavaVersionDetector.Detect(appDirectory.Path, JavaBuildTool.Maven, buildArgs)); 689Assert.Equal("17", JavaVersionDetector.Detect(appDirectory.Path, JavaBuildTool.Gradle, ["-Pprod"])); 1065var tool = toolName is "gradle" ? JavaBuildTool.Gradle : JavaBuildTool.Maven; 1082Assert.Equal("17", JavaVersionDetector.Detect(appDirectory.Path, JavaBuildTool.Gradle)); 1197Assert.Equal(JavaBuildTool.Gradle, tool); 1215Assert.Equal(JavaBuildTool.Gradle, tool);
AddJavaAppTests.cs (9)
1035Assert.Equal(JavaBuildTool.Maven, Assert.IsType<JavaBuildResource>(builder.Resources.First(r => r.Name == "api-maven-build")).Tool); 1048Assert.Equal(JavaBuildTool.Maven, Assert.IsType<JavaBuildResource>(buildResource).Tool); 1061Assert.Equal(JavaBuildTool.Gradle, Assert.IsType<JavaBuildResource>(builder.Resources.First(r => r.Name == "api-gradle-build")).Tool); 1074Assert.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)] 1112if (toolName is nameof(JavaBuildTool.Maven))
AddSpringBootAppTests.cs (3)
78var runTool = Assert.Single(runApp.Resource.Annotations.OfType<JavaBuildToolAnnotation>()).Tool; 84Assert.Equal(JavaBuildTool.Gradle, runTool); 389Assert.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")] 22var tool = Enum.Parse<JavaBuildTool>(toolName); 38var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(app.Resource, JavaBuildTool.Maven, isWindows); 52var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource, JavaBuildTool.Maven, isWindows: false); 76var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource, JavaBuildTool.Maven, isWindows: false); 103var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource, JavaBuildTool.Maven, isWindows: false); 127var wrapperPath = JavaBuildToolResolver.ResolveWrapperPath(resource, JavaBuildTool.Maven, isWindows: false);