Difference between the spring data rest JARs - spring

I see there are three JARs in Maven repo:
spring-data-rest-core
spring-data-rest-repository
spring-data-rest-webmvc
I have used webmvc JAR in the past, but not sure what/when to use the others.
Any insight?

Related

why are the github projects of spring-boot-starter projects empty?

On looking at the spring-boot-starter-web, spring-boot-starter-security projects on github, i find them to be empty with just a build.gradle file present there.
I hope this is as expected, but this leads me to understand where the actual source code can be found. And I use maven, so I was expecting atleast a pom.xml in these projects. But since it is not present, I am wondering how spring boot team publishes there artifacts to maven central repo.
I hope this is as expected
This is as expected. Spring Boot's starter modules exist purely to being multiple dependencies together into a convenient "package". For example, if you want to write a Servlet-based web application using Spring MVC and Tomcat, a single dependency on spring-boot-starter-web provides all of the dependencies that you need. You can learn a bit more about the starters in the reference documentation.
Where the actual source code can be found
The majority of the code can be found in spring-boot-autoconfigure. For more production-focused features, you'll also find some code in spring-boot-actuator-autoconfigure. The code in these two modules is activated automatically when the dependencies that it requires are on the classpath. You can learn more about this conditional activation and auto-configuration in the reference documentation.
And I use maven, so I was expecting atleast a pom.xml in these projects. But since it is not present, I am wondering how spring boot team publishes there artifacts to maven central repo.
Spring Boot is built with Gradle which, unlike Maven, completely separates the configuration needed by the build system to build the project and the information needed by a build system to consume the project. The build.gradle files provide all of the information that Gradle needs to build the project. As part of this, it generates Gradle module metadata files and Maven pom.xml files that contain all of the information needed to consume the project with Gradle and Maven respectively. These generated files are then published to Maven Central alongside the jar files, source code, etc.

What jars do I need for Spring AOP for version 5

As of version 4 of Spring, these are the jars needed to use Spring AOP:
aopalliance.jar
aspectjrt.jar
aspectjweaver.jar
cglib-nodep-2.1_3.jar
spring-aop-4.0.0.M2.jar
But for version 5, what are the jars needed other than
spring-aop-5.0.2.RELEASE.jar
spring-aspects-5.0.2.RELEASE.jar
And where do I find them?
Following are the minimum set of dependencies that I required to run an annotations based Spring applciation
spring-context-5.2.2.RELEASE.jar
spring-beans-5.2.2.RELEASE.jar
spring-expression-5.2.2.RELEASE.jar
spring-core-5.2.2.RELEASE.jar
spring-aop-5.2.2.RELEASE.jar
spring-jcl-5.2.2.RELEASE.jar
and additional dependency for Spring AOP
aspectjweaver-1.9.5.jar
You may download the entire spring distribution based on the release from here or from any maven repository by searching with individual jar name.

Spring Boot Maven Plugin keeps duplicate jars -- is there a fix?

We are seeing very large jar files created by Spring Boot Maven Plugin and upon examining them we found that there are many duplicate jars inside of it due to the structure of our multi-module project. We were able to reduce the size by excluding jars in the plugin config section, but this is a tedious and error-prone approach.
We did not find any options to de-dupe the output jar, but maybe we missed something. Any advice is appreciated.

Is Spring tightly coupled with maven

Is Spring tightly coupled with Maven ? Most of the examples in the internet shows Spring and Maven to configure spring dependent jars, this post explains so many cons of Maven. All commercial projects are should to be using only this combination ?
Please explain
Thanks
Both of them serve different purposes, Spring examples use Maven because maven is highly adopted as a build, dependency management framework. That has nothing to do with Spring coupling with Maven. Spring is a framework to build enterprise applications and Maven is a build and deploy tool.
You can use Gradle, ivy or even manually download the libraries instead of relying on Maven as the dependency management framework.
No. You can use whatever you want to build your Spring-based app. BTW, all the Spring tutorials show examples using Gradle (that Spring also uses internally).
What is true, though, is that Spring jars are available from the Maven central repository and the Spring repository, and that their dependencies is thus described in a Maven pom.xml file. But nothing prevents you from downloading the required jars manually and add them in the classpath.

Which Maven Dependencies to Include for Spring BlazeDS Integration?

How can I use Maven to configure BlazeDS AMF services with Spring? Obviously, I can’t just drop jars in my /WEB-INF/lib directory; I have to include the necessary dependencies, but many of the tutorials that exist refer to older versions or non-Maven projects. Thanks!
The pom.xml in the spring-flex-testdrive/testdrive project has all of the dependencies needed for the Spring BlazeDS Integration. You can get the spring-flex-testdrive from the Spring BlazeDS download page (just the regular Spring BlazeDS distribution).

Resources