Skip to Content
Scala Cookbook, 2nd Edition
book

Scala Cookbook, 2nd Edition

by Alvin Alexander
August 2021
Intermediate to advanced
799 pages
17h 41m
English
O'Reilly Media, Inc.
Content preview from Scala Cookbook, 2nd Edition

Chapter 17. Building Projects with sbt

Although you can use tools like Ant, Maven, and Gradle to build your Scala projects, sbt—originally named Simple Build Tool—is the de facto build tool for Scala applications. sbt makes the basic build and dependency management tasks simple and lets you use the Scala language itself to conquer more difficult tasks.

sbt uses the same directory structure as Maven, and like Maven, it uses a “convention over configuration” approach that makes the build process incredibly easy for basic projects. Because it provides a well-known, standard build process, if you work on one Scala project that’s built with sbt, it’s easy to move to another project that also uses sbt. The project’s directory structure will be the same, and you’ll know that you should look at the build.sbt file and the optional project/*.sbt files to see how the build process is configured.

Starting with version 1.3.0, sbt began using Coursier for library management, a task the Coursier website refers to as artifact fetching. Prior to 1.3.0, sbt used Apache Ivy for this task, but Coursier aims to be a faster alternative. When you specify managed dependencies in your build.sbt file, Coursier is the tool that retrieves the JAR files for you.

In addition to handling managed dependencies, you can also place unmanaged dependencies—plain old JAR files—in your project’s lib folder, and sbt will automatically find them.

As a result of all these features, with very little effort on your part, ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Scala Cookbook

Scala Cookbook

Alvin Alexander
Programming Scala, 2nd Edition

Programming Scala, 2nd Edition

Dean Wampler, Alex Payne
Functional Programming in Scala, Second Edition

Functional Programming in Scala, Second Edition

Runar Bjarnason, Michael Pilquist, Paul Chiusano

Publisher Resources

ISBN: 9781492051534Errata Page