Ubuntu-手动安装 SBT

文章目录

  • 前言
    • Ubuntu-手动安装 SBT
      • 1. SBT是什么?
        • 1.1. SBT 的特点
        • 1.2. SBT 的基本功能
        • 1.3. SBT 的常用命令
      • 2. 安装
        • 2.1. 下载
        • 2.2. 解压 sbt 二进制包
        • 2.3. 确认 sbt 可执行文件的位置
        • 2.4. 设置执行权限
        • 2.5. 创建符号链接
        • 2.6. 更新 PATH 环境变量
        • 2.7. 验证 sbt 安装

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


Ubuntu-手动安装 SBT

1. SBT是什么?

SBT(Scala Build Tool)是一个开源的构建工具,主要用于构建和管理 Scala 和 Java 项目。它是 Scala 语言的官方构建工具,功能类似于 Maven 和 Gradle,但它专为 Scala 设计,支持高度的灵活性和扩展性。

1.1. SBT 的特点
  1. 支持 Scala 和 Java:SBT 支持 Scala 和 Java 项目,能够帮助开发者轻松地编译、打包、测试和发布代码。
  2. 增量构建:SBT 支持增量构建,意味着它只会重新构建修改过的部分,从而提高构建效率。
  3. 交互式控制台:SBT 提供了一个交互式的命令行界面,开发者可以通过它快速执行构建任务、测试、运行项目等。
  4. 并行执行:SBT 支持并行执行任务,可以在多核处理器上加速构建过程。
  5. 插件扩展:SBT 提供了丰富的插件系统,可以扩展功能,比如支持发布到 Maven 仓库、与 Git 集成、生成文档等。
  6. Scala 构建配置:SBT 使用 Scala 语言本身来定义构建脚本(build.sbt),这让它的配置非常灵活和可编程。
1.2. SBT 的基本功能
  • 编译代码:自动编译 Scala 和 Java 源代码。
  • 运行程序:启动应用程序,支持热加载。
  • 依赖管理:支持 Maven 仓库,可以轻松地添加、管理和解决项目的依赖。
  • 测试支持:集成了测试框架(如 ScalaTest、JUnit),支持单元测试、集成测试等。
  • 构建发布:打包应用程序,并发布到远程仓库或本地文件系统。
1.3. SBT 的常用命令
  • sbt compile:编译项目。
  • sbt run:运行项目。
  • sbt test:运行测试。
  • sbt clean:清理项目生成的文件。
  • sbt package:打包项目,生成 JAR 文件。
  • sbt update:更新项目的依赖

2. 安装

2.1. 下载
curl -L -o sbt-1.5.5.tgz https://github.com/sbt/sbt/releases/download/v1.5.5/sbt-1.5.5.tgz

在这里插入图片描述

2.2. 解压 sbt 二进制包
tar -xvzf sbt-1.5.5.tgz

在这里插入图片描述

2.3. 确认 sbt 可执行文件的位置

进入到解压后的 sbt 目录,确认 sbt 可执行文件在 bin/ 文件夹内。

cd sbt/bin && ls
你应该能看到 sbt 可执行文件(sbt 或 sbt.bat)。如果文件存在,那么我们可以继续。

在这里插入图片描述

2.4. 设置执行权限
chmod +x bin/sbt

在这里插入图片描述

2.5. 创建符号链接

ln -s /app/yzy/sbt/bin/sbt /usr/local/bin/sbt
在这里插入图片描述
将 sbt 的可执行文件链接到 /usr/local/bin/ 目录,这样就可以在任何地方通过命令行运行 sbt 了

2.6. 更新 PATH 环境变量

确认 /usr/local/bin 目录在你的 PATH 环境变量中。运行以下命令来查看 PATH:

echo $PATH

在这里插入图片描述

如果 /usr/local/bin 没有在 PATH 中,使用以下命令将其添加:

echo "export PATH=\$PATH:/usr/local/bin" >> ~/.bashrc
source ~/.bashrc
2.7. 验证 sbt 安装
sbt --version

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/959965.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【ProtoBuf 安装】ProtoBuf在window/Linux下的安装 创建/删除swap分区

文章目录 1.ProtoBuf在window下的安装2.ProtoBuf在Linux下的安装创建swap分区命令解析关闭swap分区删除swap分区的影响 1.ProtoBuf在window下的安装 1、下载ProtoBuf编译器 下载地址:https://github.com/protocolbuffers/protobuf/releases 如果要在 C 下使用 Pro…

BAHD酰基转移酶对紫草素的手性催化-文献精读105

Two BAHD Acyltransferases Catalyze the Last Step in the Shikonin/Alkannin Biosynthetic Pathway 两个BAHD酰基转移酶催化了紫草素/左旋紫草素生物合成途径中的最后一步 一个BAHD酰基转移酶专门催化紫草素的酰基化,而另一个BAHD酰基转移酶则仅催化紫草素的对映…

C语言初阶力扣刷题——349. 两个数组的交集【难度:简单】

1. 题目描述 力扣在线OJ题目 给定两个数组,编写一个函数来计算它们的交集。 示例: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出:[2] 输入:nums1 [4,9,5], nums2 [9,4,9,8,4] 输出:[9,4] 2. 思路 直接暴力…

在Docker 容器中安装 Oracle 19c

在 Docker 容器中安装 Oracle 19c 是可行的,但它相较于其他数据库(如 MySQL、PostgreSQL 等)会复杂一些,因为 Oracle 数据库有一些特定的要求,如操作系统和库的依赖,以及许可证问题。 不过,Ora…

WGCLOUD使用介绍 - 如何监控ActiveMQ和RabbitMQ

根据WGCLOUD官网的信息,目前没有针对ActiveMQ和RabbitMQ这两个组件专门做适配 不过可以使用WGCLOUD已经具备的通用监测模块:进程监测、端口监测或者日志监测、接口监测 来对这两个组件进行监控

初学stm32 --- FreeRTOS移植

目录 移植前准备 1. 基础工程 2. FreeRTOS 源码 添加 FreeRTOS 文件 1. 添加 FreeRTOS 源码 2. 将文件添加到工程 3. 添加头文件路径 4. 添加 FreeRTOSConfig.h 文件 (1) FreeRTOSConfig.h 获取途径一 (2) FreeRTOSConfig.h 获取途径二 (3) FreeRTOSConfig.h 获取途径…

ThreadLocal概述、解决SimpleDateFormat出现的异常、内存泄漏、弱引用、remove方法

①. ThreadLocal简介 ①. ThreadLocal是什么 ①. ThreadLocal本地线程变量,线程自带的变量副本(实现了每一个线程副本都有一个专属的本地变量,主要解决的就是让每一个线程绑定自己的值,自己用自己的,不跟别人争抢。通过使用get()和set()方法,获取默认值或将其值更改为当前线程…

【2024年 CSDN博客之星】我的2024年创作之旅:从C语言到人工智能,个人成长与突破的全景回顾

我的2024年创作之旅:从C语言到人工智能,个人成长与突破的全景回顾 引言 回望2024年,我不仅收获了技术上的成长,更收获了来自CSDN平台上无数粉丝、朋友以及网友们的支持与鼓励。在这条创作之路上,CSDN不仅是我展示技术成…

Windows11恢复传统右键菜单

Windows11恢复传统右键菜单 执行下面的命令(管理员下) reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /vetaskkill /f /im explorer.exestart explorer.exe或者 reg add "HKCU\Software\Classes\CLSID\{8…

PCIE模式配置

对于VU系列FPGA,当DMA/Bridge Subsystem for PCI Express IP配置为Bridge模式时,等同于K7系列中的AXI Memory Mapped To PCI Express IP。

WPS数据分析000008

目录 一、替换 通配符 求出橙色底纹单元格的和 二、定位 拆分并填充内容 删除空行 一、替换 快捷键ctrlh 注意:限制数据区域。 若为单元格,表示选择整个工作表。 通配符 求出橙色底纹单元格的和 第一步:查找出橙色单元格,c…

Excel制作合同到期自动提醒!

大家好,我是小鱼。 今天分享一下如何利用Excel制作合同到期提醒表,实现Excel表格自动计算合同到期日和天数,根据合同状态和到期天数自动填充颜色提醒,超实用。先看一下效果,已经到期的合同会自动被填充为红色&#xf…

GestureDetector组件的功能与用法

文章目录 1 概念介绍2 使用方法3 示例代码 我们在上一章回中介绍了ListView响应事件的内容,本章回中将介绍GestureDetector Widget.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里介绍的GestureDetector是一个事件响应Widget,它可以响应双击事件&…

0 基础学运维:解锁 K8s 云计算运维工程师成长密码

前言:作为一个过来人,我曾站在技术的门槛之外,连电脑运行内存和内存空间都傻傻分不清,完完全全的零基础。但如今,我已成长为一名资深的k8s云计算运维工程师。回顾这段历程,我深知踏上这条技术之路的艰辛与不…

【Unity】 HTFramework框架(五十九)快速开发编辑器工具(Assembly Viewer + ILSpy)

更新日期:2025年1月23日。 Github源码:[点我获取源码] Gitee源码:[点我获取源码] 索引 开发编辑器工具MouseRayTarget焦点视角Collider线框Assembly Viewer搜索程序集ILSpy反编译程序集搜索GizmosElement类找到Gizmos菜单找到Gizmos窗口分析A…

飞牛NAS新增虚拟机功能,如果使用虚拟机网卡直通安装ikuai软路由(如何解决OVS网桥绑定失败以及打开ovs后无法访问飞牛nas等问题)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 飞牛NAS虚拟机安装爱快教程 📒🛠️ 前期准备🌐 网络要求💾 下载爱快镜像🚀 开始安装💻 开启IOMMU直通🌐 配置网络🚨 解决OVS网桥绑定失败以及打开ovs后无法访问飞牛nas等问题➕ 创建虚拟机🎯 安装ikuai💻 进…

嵌入式蓝桥杯电子赛嵌入式(第14届国赛真题)总结

打开systic 生成工程编译查看是否有问题同时打开对应需要的文档 修改名称的要求 5.简单浏览赛题 选择题,跟单片机有关的可以查相关手册 答题顺序 先从显示开始看 1,2 所以先打开PA1的定时器这次选TIM2 从模式、TI2FP2二通道、内部时钟、1通道设为直接2通道设置…

C# volatile 使用详解

总目录 前言 在多线程编程中,确保线程之间的正确同步和可见性是一个关键挑战。C# 提供了多种机制来处理这些挑战,其中之一就是 volatile 关键字。它用于指示编译器和运行时环境不要对特定变量进行某些优化,以保证该变量的读写操作是线程安全…

基于OSAL的嵌入式裸机事件驱动框架——整体架构调度机制

参考B站up主【架构分析】嵌入式祼机事件驱动框架 感谢大佬分享 任务ID : TASK_XXX TASK_XXX 在系统中每个任务的ID是唯一的,范围是 0 to 0xFFFE,0xFFFF保留为SYS_TSK_INIT。 同时任务ID的大小也充当任务调度的优先级,ID越大&#…

理解C++中的右值引用

右值引用,顾名思义,就是对一个右值进行引用,或者说给右值一个别名。右值引用的规则和左值一用一模一样,都是对一个值或者对象起个别名。 1. 右值引用和左值引用一样,在定义的同时必须立即赋值,如果不立即赋…