当前位置: 首页 > article >正文

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

在这里插入图片描述


http://www.kler.cn/a/520918.html

相关文章:

  • 实战 | 域环境下通过anydesk进入生产网
  • 30289_SC65XX功能机MMI开发笔记(ums9117)
  • ospf动态路由配置,cost路径调整,ospf认证实验
  • 异或哈希总结
  • 「数学::质数」分解质因子 / LeetCode 2521(C++)
  • Juc22_什么是中断、interrupt、isInterrupted、interrupted方法源码解析、如何使用中断标识停止线程
  • 物联网MQTT协议及本地化部署测试
  • doris:ORC
  • 每日 Java 面试题分享【第 9 天】
  • HTTP(1)
  • Golang Gin系列-9:Gin 集成Swagger生成文档
  • GPT 结束语设计 以nanogpt为例
  • VScode+Latex (Recipe terminated with fatal error: spawn xelatex ENOENT)
  • doris:Insert Into Values
  • 深入理解若依RuoYi-Vue数据字典设计与实现
  • 关于使用微服务的注意要点总结
  • LongLoRA:高效扩展大语言模型上下文长度的微调方法
  • 机器学习周报-文献阅读
  • 算法知识补充2
  • 软键盘显示/交互问题
  • 基于vscode的cppcmake调试环境配置
  • 【后端面试总结】mysql的group by怎么用
  • 二叉树的所有路径(力扣257)
  • PDF2WORD万能方法,如何控制Adobe dc pro,自动实现PDF转word
  • 如何保证P2P能源交易的安全性
  • 《RWA全球产业白皮书》发布:向凌云教授解析全球经济转型与RWA的未来