sbt

3.6
(12)

Use Scala to define your tasks. Then run them in parallel from the shell.

Work for sbt?

Learning about sbt?

We can help you find the solution that fits you best.

sbt Reviews

Chat with a G2 Advisor
Write a Review
Filter Reviews
Filter Reviews
  • Ratings
  • Company Size
  • User Role
  • Industry
Ratings
Company Size
User Role
Industry
Showing 12 sbt reviews
LinkedIn Connections
sbt review by User
User
Validated Reviewer
Verified Current User
Review Source
content

"Good for easy setup, but would prefer Mill"

What do you like best?

The sbt community is fast moving. If you follow sbt's progress on Github (it's open source after all!) you'll see that it has plenty of dedicated supporters and has fixed many of its rough edges from 0.x quite quickly (for example, the hated sbt multi-module import bug).

What do you dislike?

Despite what I said above...many people just don't believe sbt was built on a good foundational model. For example, it's modeling of tasks as a 2D grid assuming tasks apply to all projects --for example, assuming the console tasks applies to all projects--is crazy! Like, who thought of that!? Anyway, we're currently looking for better alternatives.

What business problems are you solving with the product? What benefits have you realized?

sbt is the defacto Scala build tool. We use sbt to build our Scala app quickly and in a reliable manner.

Sign in to G2 Crowd to see what your connections have to say about sbt
sbt review by Pablo Francisco P.
Pablo Francisco P.
Validated Reviewer
Verified Current User
Review Source
content

"Build tool for human beings"

What do you like best?

The DSL provided by SBT has been thought to be used by humans. It hugely contrasts with other build tools based on XML where readability is poor at the best.

The fact that the project definition is build using a DSL within Scala helps as the user improves his or her skills in this language.

Plugin integration and ecosystem are great too.

What do you dislike?

When using command line mode, not interactive, you need to group each command with its parameters within a single string. e.g: sbt clean "runMain org.apache.... ...MainClass".

Version upgrades usually break compatibility with plugins and, therefore, with some projects.

Recommendations to others considering the product

Learn Scala before trying to do complex builds with SBT. Start playing with toy projects and, when you feel confortable with that, you'll be able to use advanced features as shading.

What business problems are you solving with the product? What benefits have you realized?

Project build and dependency management as well as artefacts deployment and docker image generation with the assemblyPlugin.

I also use its great integration with Scala's REPL in interactive mode.

What Other Continuous Delivery solution do you use?

Thanks for letting us know!
sbt review by User
User
Validated Reviewer
Review Source
content

"Too bad only good build tool for Scala"

What do you like best?

sbt has been getting better over the years. I know one of the maintainers personally and he pours in all of his freetime when he's not working, so I have good hope that it'll continue to get fast updates for another 2+ years. Another reason I like it is you don't have to configure it using some weird XML or YAML file. You can just write pure Scala! That makes refactoring sooo much easier.

What do you dislike?

It is by far, the slowest build tool I have ever used. And I've used many old ones people have complained about, including Maven, Ant and Gradle. Some days I wish I could go back to them for my project. Just to do a simple sbt clean takes for my project 10+ seconds. And don't get me started on sbt compile or sbt format. I mean I might as well just create an alias for rm -rf compiledCodeDirectory and do it faster. I haven't looked at the code in depth but I suspect every since task it tries to load everything including code it doesn't need.

Recommendations to others considering the product

Make sure the benefits of switching to sbt are worth it. And make sure you are familiar with Scala before using it.

What business problems are you solving with the product? What benefits have you realized?

We use sbt to manage our build configuration and do the building of our repository, which is pure Scala. It works reliably and allows us to create identical builds no matter the OS or processor.

sbt review by Hari Hara Kumar E.
Hari Hara Kumar E.
Validated Reviewer
Verified Current User
Review Source
content

"Great build tool for scala projects"

What do you like best?

It has great support. It builds the projects very fast. Easy to use command line support.It also supports building the projects as we make small code changes - this saves time. It integrates very well with Intellij. It has abundant tasks supported.

What do you dislike?

Till now I did not see anything I don't like about SBT.

Recommendations to others considering the product

Make sure to keep up with the updates to the tool. Going through documentation helps a lot with finding all the tasks supported by SBT.

What business problems are you solving with the product? What benefits have you realized?

We use it for building scala projects in our organization. These scala projects are built with open source libraries.

sbt review by User
User
Validated Reviewer
Verified Current User
Review Source
content

"Regret switching to sbt"

What do you like best?

If you are building something in Scala, it mostly makes sense to use sbt because it works out of the box with Scala and is configured using Scala. I don't know of any other build too that does that.

What do you dislike?

Arg the documentation is so terrible! It's so unintuitive to use! And it' super slow too.

What business problems are you solving with the product? What benefits have you realized?

We use sbt to build Scala applications. The primary benefit is having your main app code and build configuration all be in the same language, which requires less context switching.

sbt review by User in Government Administration
User in Government Administration
Validated Reviewer
Verified Current User
Review Source
content

"Delightful"

What do you like best?

Everything. It is a simple way to get up and running on the finest language running on the finest virtual machine. It stands on the shoulders of giants, but it is a fantastic contribution in itself

What do you dislike?

It's not any secret that startup time is a little rough. I have a pretty good laptop, but my fan runs pretty much the whole time I'm running SBT.

Recommendations to others considering the product

Put in the work. Learn the language. You will not be disappointed.

What business problems are you solving with the product? What benefits have you realized?

I like the workflow on the CLI. It's a handly little swiss army knife that lets me unpack templates, try things out on the REPL, and ultimately compile and run.

sbt review by Arbi A.
Arbi A.
Validated Reviewer
Review Source
content

"SBT is the choice for building Scala projects"

What do you like best?

SBT (Simple build tool) was created specially for managing lifecycle of Scala based projects. It has many interesting features: it is configurable in scala (not XML which is the case of many other build tools) this leads to very short and readable configuration files. Also, it has support for continuous compilation and testing, i.e. whenever a file is changed the processing of running tests or compiling the whole project is launched automatically. This feature is useful as the developer gets an immediate feedback on compile errors or bugs causing the tests to fail.

What do you dislike?

Although SBT has very nice feature but this doesn't imply that every project should switch to this build tool. Also, SBT lacks tools for easing the task for porting configurations from other build tools. For instance, if an existing project uses a specific build tool and has a complex configuration it will be hard to port this configuration to SBT manually. Furthermore, SBT targets Scala projects and thus has a limited community and lacks plugins compared to other build tools in the Java ecosystem.

In addition, SBT lacks good integration with IDE and the current ones tend to horribly slow down the IDE.

Recommendations to others considering the product

If you don't have Scala based projects then SBT may not be the best choice. However if you use Scala then you should know that the company behind Scala push for the use of SBT and plugins for other build tools in the Java ecosystem are driven by the community.

What business problems are you solving with the product? What benefits have you realized?

We extensively use SBT for our Scala projects which are mostly ETL (Extract-Transform-Load) related jobs. Where were used to other build tools which are more popular in the Java ecosystem. We were satisfied with SBT as it has some nice features even if they are not primordial.

sbt review by User in Farming
User in Farming
Validated Reviewer
Verified Current User
Review Source
content

"Mediocre tool, needs some more time to mature"

What do you like best?

Best part is its integration with Maven. It publishes the POM and releases it to M2 repository.

What do you dislike?

Its integration with Maven. While it does try to integrate with Maven, often when you publish from SBT to M2 repository, it fails to rewrite the existing SNAPSHOT or RELEASE version. More often, I will have to go into ivy directory and delete the existing JAR file and then publish through SBT. This lead to many hours of hair scratching, trying to figure out why my changes don't show up in the dependent project.

Recommendations to others considering the product

If you are using Maven and are happy with it, then stick to it. For me, lack of build tree plugin in IntelliJ is a big drawback for SBT, for its use is invaluable in figuring out the build problems.

What business problems are you solving with the product? What benefits have you realized?

We were trying to convert from Java to Scala and this offers a neat integration with Scala code. Its definitely more succinct than XML style Maven and its easier to navigate around.

sbt review by Henry K.
Henry K.
Validated Reviewer
Verified Current User
Review Source
content

"Powerful, but requires sone knowledge "

What do you like best?

The sbt is a very powerful tool that allows customized project settings at minimum details, all powered by scala via sbts dsl.

What do you dislike?

The dsl can be difficult to grasp at first, so it'll take some time before you get used to and start being productive.

Recommendations to others considering the product

Be sure to grasp the concept of build tools before trying to learn sbt.

What business problems are you solving with the product? What benefits have you realized?

Package, test-running, deployment (maven repo) and repl within a single long-running console.

sbt review by Bhavesh G.
Bhavesh G.
Validated Reviewer
Review Source
content
Business partner of the vendor or vendor's competitor, not included in G2 Crowd scores.

"Great for building projects "

What do you like best?

It comes in really handy and effortless for building small projects. It also integrates very well with IntelliJ IDEA.

What do you dislike?

sbt changed it format from v0.7 to v0.10 so some users might have issues over migration.

What business problems are you solving with the product? What benefits have you realized?

building simple yet complex projects.

sbt review by User in Computer & Network Security
User in Computer & Network Security
Validated Reviewer
Review Source
content

"sbt is a fast interactive build tool for scala"

What do you like best?

Fast incremental build that uses multi-core CPUs and cache previously built class

Scala-like build file syntax

Integrate dependencies in the scala build file

Interactive console to investigate scala classes

Parallel build many projects

What do you dislike?

Learning curve is steep

I wish sbt is more simpler like Makefile

Recommendations to others considering the product

Compare sbt with gradle before using.

What business problems are you solving with the product? What benefits have you realized?

Build order matching systems using scala

sbt review by User in Automotive
User in Automotive
Validated Reviewer
Review Source
content

"Old school for the new school"

What do you like best?

I like being able to do everything in one program.

What do you dislike?

Having limited function with my mouse, requiring that I tab and enter for most processes.

What business problems are you solving with the product? What benefits have you realized?

I am able to order parts for customers.

Kate from G2 Crowd

Learning about sbt?

I can help.
* We monitor all sbt reviews to prevent fraudulent reviews and keep review quality high. We do not post reviews by company employees or direct competitors. Validated reviews require the user to submit a screenshot of the product containing their user ID, in order to verify a user is an actual user of the product.