sbt配置nexus仓库
sbt配置nexus仓库
大漠小北 发表于4年前
sbt配置nexus仓库
  • 发表于 4年前
  • 阅读 1880
  • 收藏 20
  • 点赞 2
  • 评论 6

标题:腾讯云 新注册用户域名抢购1元起>>>   

最近学习Scala,不可避免的要用到sbt。爱折腾的我把原本比较简单的事情搞的复杂了,来来回回搞了好久,记录下来,有同样爱折腾的盆友可以参考下。

sbt在windows下如果是默认安装,会在用户目录生成 .ivy2 和 .sbt 2个文件夹,貌似是这2个啦,因为经常装系统的缘故,反正我是不太喜欢装到C盘的。

不装C盘就要改配置啦,怎么改?

  1. 首先得安装sbt吧,从http://www.scala-sbt.org/ 下载,直接选择gz包。

  2. 解压gz包,我是解压到E:\sbt

  3. 在E:\sbt\conf 下新增个文件repo.properties,文件内容如下:

    [repositories]
      local
      nexus:  http://127.0.0.1:8081/nexus/content/groups/public
      sonatype-snapshots:
  4. 修改E:\sbt\conf\sbtconfig.txt,加入3行

    -Dsbt.global.base=E:/sbt/.sbt
    -Dsbt.ivy.home=E:/sbt/.ivy2
    -Dsbt.repository.config=E:/sbt/conf/repo.properties

下载jar包我选择从nexus私服下,因为之前maven工程积累了不少jar包,要是从中央仓库下,公司网这每月限500M流量还不让人崩溃啊。

目前为止,都是一切顺利,然后进入E:\sbt\bin目录,执行sbt.bat

开始初始化,然后下载必须的包。。。

突然结束了,执行sbt --version 正常的,但是执行sbt就报错,

Error during sbt execution: No Scala version specified or detected

懒的研究,直接问谷哥度娘,结果没找到类似的问题。不得已自己跟踪日志(日志在E:\sbt\.sbt\boot\update.log)。发现sbt初始化被异常中断了,中断位置是在下载初始化jar包,在中央仓库搜索了下这个包,发现根本原因是这几个依赖包在中央仓库没有,在typesafe的仓库里面。

但是不应该啊,我在nexus里面加了typesafe的仓库

http://repo.typesafe.com/typesafe/ivy-releases

删掉.sbt目录,反复重试都不行。

谷哥度娘都没遇到过类似的问题,只好默认安装了,然后查看日志发现,nexus中是先找中央仓库,然后再找typesafe,于是乎,修改nexus中pubilic虚拟库的查找顺序,把中央仓库放最后。

删掉.sbt目录,重试,ok了。然后根据官网的hello的demo做了一遍,一切ok。

嘿嘿,其实我只是想说,sbt配置nexus仓库的要点——中央仓库放public的最后

 

共有 人打赏支持
粉丝 4
博文 4
码字总数 2836
评论 (6)
yak
scala主要用来干啥?
谦谦君子

引用来自“yak”的评论

scala主要用来干啥?
Java能干啥他能干啥。。
hanzhankang
请问typesafe的库在nexus是怎么配置的?
hanzhankang
hanzhankang
另外,如何测试呢?有小列子否?
大漠小北

引用来自“hanzhankang”的评论

另外,如何测试呢?有小列子否?
例子请看:http://www.scala-sbt.org/0.13/tutorial/Hello.html 上面也提到了是按照官网这个做的测试
×
大漠小北
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: