Describe the bug Documentation assume samples can also be built with Maven, but only Gradle is directly supported by spring-security and spring-security-samples projects

To Reproduce Go to

https://docs.spring.io/spring-security/reference/reactive/getting-started.html

You read "You can now run the Spring Boot application by using the Maven Plugin’s run goal" which is true no more, because no mvnw and no pom.xml are provided. All the code snippets telling mvnw can be used instead of gradlew can be removed or, at least, not being shown as the default.

Additionally, page starts referring samples projects with "The completed application can be found in our samples repository" and we know these projects are "Gradle-only" and immediately after suggest to download a complete application zip file with "you can download a minimal Reactive Spring Boot + Spring Security application by clicking here" ...but the zip example is an "old" "Maven-only" project, which can be disorienting.

Expected behavior If spring has dropped out-of-the-box support for Maven, including both mvnw and the pom.xml no more in both code repositories and samples repositories, I expect documentation to reflect this and stop suggesting Maven as the "preferred" way to build/run/etc. the code

Sample

spring-security code uses Maven no more https://github.com/spring-projects/spring-security

spring-security-samples code uses Maven no more https://github.com/spring-projects/spring-security-samples

documentation page suggest to use Maven to run the application https://github.com/spring-projects/spring-security/blob/5.7.5/docs/modules/ROOT/pages/reactive/getting-started.adoc

Comment From: sjohnr

Thanks for the suggestions, @segaura!

You read "You can now run the Spring Boot application by using the Maven Plugin’s run goal" which is true no more, because no mvnw and no pom.xml are provided.

The link points to Spring Boot documentation that still talks about the Spring Boot Maven Plugin. I think this is still relevant information, so I don't know that we would completely remove references to Maven as you suggest. Perhaps I'm missing what you mean by "which is true no more"?

I expect documentation to reflect this and stop suggesting Maven as the "preferred" way to build/run/etc. the code

Two things come to mind for me:

First, I think you're recommending to suggest Gradle first (as the default example) because Spring Security and Samples projects themselves are built with Gradle, and we link to them. That could make sense to do here, to remove confusion when linking to official samples. It could also make sense to switch the download link to be a Gradle project as well.

Second, I feel you're connecting the spring-security project build tool itself with usage in applications (e.g. downloaded from Spring Initializr). If so, I don't believe this page is specific to the spring-security project build itself, but the jars available on Maven Central, which can of course be used with Maven. So most of the page content still seems accurate to me. Am I misunderstanding your suggestion(s)?

Comment From: segaura

Two things come to mind for me:

First, I think you're recommending to suggest Gradle first (as the default example) because Spring Security and Samples projects themselves are built with Gradle, and we link to them. That could make sense to do here, to remove confusion when linking to official samples. It could also make sense to switch the download link to be a Gradle project as well.

Perfect, this is exactly what I am trying to suggest, thank you.

Second, I feel you're connecting the spring-security project build tool itself with usage in applications (e.g. downloaded from Spring Initializr). If so, I don't believe this page is specific to the spring-security project build itself, but the jars available on Maven Central, which can of course be used with Maven. So most of the page content still seems accurate to me. Am I misunderstanding your suggestion(s)?

You are right on this also, everything is accurate and my points are somehow cosmetic: I am suggesting that if spring-security and spring-security-samples projects switched to gradle, having the documentation that sometimes tells "You can now run the Spring Boot application by using the Maven Plugin’s run goal" can interrupt the flow of the reader.

Comment From: sjohnr

Thanks for clarifying, @segaura! Are you interested in submitting a PR to address this?

Comment From: jzheaux

I'm not sure that because Spring Security uses Gradle, we should privilege Gradle in the docs. I wonder if there are Spring Initializr stats that would give a hint.

Either way, we can use documentation tabs to show both ways and then allow the reader to pick which one they want based on what they are using.

Comment From: kunalvarpe

Can I work on this?

Comment From: sjohnr

It's yours, @kunalvarpe!

Comment From: kunalvarpe

@sjohnr I think the gradle is now shown as the default in https://docs.spring.io/spring-security/reference/reactive/getting-started.html link. I was goint to do the same thing, I don't know as part of which PR that ha been changed. What should be done now here?

Comment From: sjohnr

@kunalvarpe, the gradle example has been in place for some time, but is listed as the second tab/option. Perhaps what you're seeing is that the documentation page remembers your selection of "Gradle" when you visit the page later?