SBT vs Maven for a new Scala/Spark project? - maven

Am new to Scala/SBT but have experience in Java/Maven.
For a new Scala/Spark project, what should be the choice: SBT or Maven?
PS- I intend to use Eclipse or IntellijIdea as IDE.
Thanks
ATT

I have also been looking into this question. Here are some things I have found.
According to the Apache Spark documentation:
Maven is the official build tool recommended for packaging Spark, and is the build of reference. But SBT is supported for day-to-day development since it can provide much faster iterative compilation. More advanced developers may wish to use SBT. http://spark.apache.org/docs/latest/building-spark.html#building-with-sbt
Three reasons I have heard for SBT:
It was built for Scala
It has incremental compilation
.sbt files tend to be more compact
In response though
Maven works just as well
If you are using the JetBrains IntelliJ IDE, which has a free edition, it has its own incremental compilation.
I think I will decide to go with Maven as it integrates better with my build server (continuous deployment).

Related

AEM project release build

I am interested to see how people are doing release builds for an AEM project:
using the maven release plugin that is in pom.xml OOTB for this archtype
custom process using other maven plugins (build-helper plugin, version plugin)
Pros/cons for each option?
what is the release numbering mechanism that you use?
how is the patching done?
do you use a release branching mechanism?
Thanks
The OOTB maven build configuration from the archetype is good enough and extensively used across all the AEM projects I have been involved in. The versioning can be handled by modifying the version in the pom.xml

I could not download Spring Tool Suite, seems site is down

I need a help to get Spring Tool Suite for Eclipse (or build in Eclipse). It seems that site is down for several days. Could someone share with me one of latest build of STS for Eclipse or Spring installed in Eclipse?
Thank you!
I tried to download it in Eclipse and it works. Please try Help--> Eclipse Market Place and search Spring Tool Suite. I used Eclipse Mars.2

What build tool can i use with artifactory community for .net projects

Right now my boss made a simple plugin to integrate maven with .net projects, but this keeps us from doing certain things. I want to propose a non-maven solution, and would love to use nuget with artifactory but the pro version isnt cheap. Is there a different build solution I can use that integrates well with artifactory and jenkins?
I looked into gradle and Ivy, but .net still seems like a second class citizen there.
You definitely should use the nuget support in the Pro version.
You can evaluate it for free before deciding on paying any money at all, and then you can use the cloud-based Artifactory instance and pay per month per use if that's easier than paying for a year in front.

Installing m2e plugin - RAD 7.5.5

I am trying to install the m2e plugin so that I can begin experimenting with Maven. I looked towards the m2e download page and was directed here but it is throwing a 404 error. Can anyone provide any more guidance on how to integrate this plugin with RAD 7.5?
As far as I can tell from here, RAD 7.5.5 is based on an old version of Eclipse. m2e is unlikely to work, but its predecessor m2eclipse might. Hopefully you will be able to find it as explained here.
However m2e evolved a lot in the last few years and I'd suggest that you switch to a more recent version of Eclipse, if you can. The latest versions actually have m2e directly integrated.

Debugging with multiple library versions in intellij

We have a large maven project and not all of the projects specify the same version of various libraries, largely because these libraries haven't changed in some time. This causes problems with debugging because IntelliJ frequently selects the older version when it's the newer that's being used at runtime. Aside from fixing the poms, how can we get IntelliJ to resolve to the sources for the correct version of the library.
There is no way to do it except configuring your project dependencies correctly (to use the same library version in all the modules).

Resources