目录
具体现象1(一直lock)
在第一次运行以下代码之后等待很久
cd /usr/local/sbt
./sbt sbtVersion
一直出现lock,[info] waiting for lock on /root/.sbt/boot/sbt.boot.lock to be available..
具体报错,原因多半是执行了多次下载命令,上一个下载命令还未结束,故属于上一个下载命令的锁还没有消除,处理的思路就是释放锁!
[info] waiting for lock on /root/.sbt/boot/sbt.boot.lock to be available..
解决办法1
此时只要删除“~/.sbt”和“~/.ivy2”和"~/.ivy"这些目录,目的是清楚缓存,且释放锁,由于是清楚所有的资源,需要重新下载整个sbt。
命令行输入
bash
# 删除 ~/.sbt 目录
rm -r ~/.sbt
# 删除 ~/.ivy2 目录
rm -r ~/.ivy2
# 删除 ~/.ivy 目录
rm -r ~/.ivy
解决办法2
用jps查看正在运行的进程,使用 kill -9 进程号杀死sbt-launch.jar.(sbt配置的进程,杀死之后就释放资源了)
代码就不贴了,搜一下命令行代码就行,很简单的
具体现象2(下载很慢,需要配置镜像源)
在第一次运行以下代码之后等待很久
cd /usr/local/sbt
./sbt sbtVersion
一直卡在下载界面,有一些包的下载速度一直不动,原因是第一次运行sbt需要导入依赖,导入的过程是需要国外资源的,打包编译的时候非常慢
解决办法1
使用魔法之后重新下载,这种不推荐
解决办法2
给sbt配置镜像源
cd ~
mkdir .sbt #如果该目录已经存在,就不用创建了
cd .sbt
vim repositories #使用vim编辑器创建repositories文件
在repositories中写下:
[repositories]
local
huaweicloud-maven: https://repo.huaweicloud.com/repository/maven/
maven-central: https://repo1.maven.org/maven2/
sbt-plugin-repo: https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
这里有个很重要的点也是我踩过的坑!
1.配置之前一定要进入镜像源查看是否可用,maven的即使不可用也有很多除了华为镜像源的替代,但是sbt-plugin一定要看能不能用!不能就要去重新找一个,作者写于2023年9月17日,以上镜像源都可用
2.若是不可用可以去博客找,百度找,主流镜像源都在华为,百度,阿里;以及清华高校搭建的服务器上
3.也是最重要的有一些Spark版本太低了,导致镜像源有资源,但是没有对应版本的资源,要么换Spark版本,要么换镜像源。例如现在华为就已经没有Spark2.4.0之前版本的资源了
作者推荐的编译:使用idea编译!省心又省力:)
推荐链接
一些我写的博客(也许你正在做呢)
写在前面的话
首先这篇博客绝对原创。读者遇到编程中的任何问题可以留言,看到了就会回复,由于有部分读者受困于大数据的生产实习,着急可以加qq1259097853
需要的前瞻知识
这篇博客是假设读者都是已经安装好了Hadoop,Spark,以及对idea插件等,如果在安装这些大数据软件遇到了困难可以根据版本号在CSDN里搜对应的大数据软件安装
用到的软件版本
Hadoop2.7.7;Java1.8.0;sbt1.4.0;Spark2.4.0;Hive2.1.1;ZooKeeper3.5.10;Python3.7.9;ideaIC-2022.1.4;Scala2.12.2