Scala - Tips
1- 运行scala命令,提示报错
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\guowli>scala
Welcome to Scala 2.12.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_101).
Type in expressions for evaluation. Or try :help. scala> java.lang.NullPointerException
at java.util.Arrays.sort(Arrays.java:1438)
at scala.tools.nsc.classpath.JFileDirectoryLookup.listChildren(DirectoryClassPath.scala:113)
at scala.tools.nsc.classpath.JFileDirectoryLookup.listChildren$(DirectoryClassPath.scala:97)
at scala.tools.nsc.classpath.DirectoryClassPath.listChildren(DirectoryClassPath.scala:202)
at scala.tools.nsc.classpath.DirectoryClassPath.listChildren(DirectoryClassPath.scala:202)
at scala.tools.nsc.classpath.DirectoryLookup.list(DirectoryClassPath.scala:73)
at scala.tools.nsc.classpath.DirectoryLookup.list$(DirectoryClassPath.scala:69)
at scala.tools.nsc.classpath.DirectoryClassPath.list(DirectoryClassPath.scala:202)
at scala.tools.nsc.classpath.AggregateClassPath.$anonfun$list$1(AggregateClassPath.scala:76)
at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:234)
at scala.collection.Iterator.foreach(Iterator.scala:929)
at scala.collection.Iterator.foreach$(Iterator.scala:929)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1417)
at scala.collection.IterableLike.foreach(IterableLike.scala:71)
at scala.collection.IterableLike.foreach$(IterableLike.scala:70)
at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
at scala.collection.TraversableLike.map(TraversableLike.scala:234)
at scala.collection.TraversableLike.map$(TraversableLike.scala:227)
at scala.collection.AbstractTraversable.map(Traversable.scala:104)
at scala.tools.nsc.classpath.AggregateClassPath.list(AggregateClassPath.scala:74)
at scala.tools.nsc.symtab.SymbolLoaders$PackageLoader.doComplete(SymbolLoaders.scala:271)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:220)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1530)
at scala.reflect.internal.Mirrors$RootsBase.init(Mirrors.scala:225)
at scala.tools.nsc.Global.rootMirror$lzycompute(Global.scala:65)
at scala.tools.nsc.Global.rootMirror(Global.scala:63)
at scala.tools.nsc.Global.rootMirror(Global.scala:36)
at scala.reflect.internal.Definitions$DefinitionsClass.ObjectClass$lzycompute(Definitions.scala:267)
at scala.reflect.internal.Definitions$DefinitionsClass.ObjectClass(Definitions.scala:267)
at scala.reflect.internal.Definitions$DefinitionsClass.init(Definitions.scala:1422)
at scala.tools.nsc.Global$Run.<init>(Global.scala:1164)
at scala.tools.nsc.interpreter.IMain._initialize(IMain.scala:125)
at scala.tools.nsc.interpreter.IMain.initializeSynchronous(IMain.scala:147)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$11(ILoop.scala:1030)
at scala.tools.nsc.interpreter.ILoop.startup$1(ILoop.scala:1011)
at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:1049)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:82)
at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:85)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:96)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:101)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala) C:\Users\guowli> C:\Users\guowli>scala -version
Scala code runner version 2.12.4 -- Copyright 2002-2017, LAMP/EPFL and Lightbend, Inc. C:\Users\guowli>
;%SCALA_HOME%\bin;%SCALA_HOME%\lib\dt.jar;%SCALA_HOME%\lib\tools.jar.;
注意:"变量值"最前面的 .; 不要漏掉。最后单击确定即可。
2- 在Win7 64bit系统cmd命令行下运行sbt命令,提示报错
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\guowli>sbt
"C:\Users\guowli\.sbt\preloaded\org.scala-sbt\sbt\"1.0.2"\jars\sbt.jar"
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
Getting org.fusesource.jansi jansi 1.11 ... :: problems summary ::
:::: WARNINGS
module not found: org.fusesource.jansi#jansi;1.11 ==== local: tried C:\Users\guowli\.ivy2\local\org.fusesource.jansi\jansi\1.11\ivys\ivy.xml -- artifact org.fusesource.jansi#jansi;1.11!jansi.jar: C:\Users\guowli\.ivy2\local\org.fusesource.jansi\jansi\1.11\jars\jansi.jar ==== local-preloaded-ivy: tried file:/C:/Users/guowli/.sbt/preloaded/org.fusesource.jansi/jansi/1.11/ivys/ivy.xml ==== local-preloaded: tried file:/C:/Users/guowli/.sbt/preloaded/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom -- artifact org.fusesource.jansi#jansi;1.11!jansi.jar: file:/C:/Users/guowli/.sbt/preloaded/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar ==== Maven Central: tried https://repo1.maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom -- artifact org.fusesource.jansi#jansi;1.11!jansi.jar: https://repo1.maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar ==== sbt-maven-releases: tried https://repo.scala-sbt.org/scalasbt/maven-releases/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom -- artifact org.fusesource.jansi#jansi;1.11!jansi.jar: https://repo.scala-sbt.org/scalasbt/maven-releases/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar ==== sbt-maven-snapshots: tried https://repo.scala-sbt.org/scalasbt/maven-snapshots/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom -- artifact org.fusesource.jansi#jansi;1.11!jansi.jar: https://repo.scala-sbt.org/scalasbt/maven-snapshots/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar ==== typesafe-ivy-releases: tried https://repo.typesafe.com/typesafe/ivy-releases/org.fusesource.jansi/jansi/1.11/ivys/ivy.xml ==== sbt-ivy-snapshots: tried https://repo.scala-sbt.org/scalasbt/ivy-snapshots/org.fusesource.jansi/jansi/1.11/ivys/ivy.xml :::::::::::::::::::::::::::::::::::::::::::::: :: UNRESOLVED DEPENDENCIES :: :::::::::::::::::::::::::::::::::::::::::::::: :: org.fusesource.jansi#jansi;1.11: not found :::::::::::::::::::::::::::::::::::::::::::::: :::: ERRORS
Server access Error: Connection timed out: connect url=https://repo1.maven.org/maven2/org/fusesource/jansi/jansi
/1.11/jansi-1.11.pom Server access Error: Connection timed out: connect url=https://repo1.maven.org/maven2/org/fusesource/jansi/jansi
/1.11/jansi-1.11.jar Server access Error: Connection timed out: connect url=https://repo.scala-sbt.org/scalasbt/maven-releases/org/fu
sesource/jansi/jansi/1.11/jansi-1.11.pom Server access Error: Connection timed out: connect url=https://repo.scala-sbt.org/scalasbt/maven-releases/org/fu
sesource/jansi/jansi/1.11/jansi-1.11.jar Server access Error: Connection timed out: connect url=https://repo.scala-sbt.org/scalasbt/maven-snapshots/org/f
usesource/jansi/jansi/1.11/jansi-1.11.pom Server access Error: Connection timed out: connect url=https://repo.scala-sbt.org/scalasbt/maven-snapshots/org/f
usesource/jansi/jansi/1.11/jansi-1.11.jar Server access Error: Connection timed out: connect url=https://repo.typesafe.com/typesafe/ivy-releases/org.fuses
ource.jansi/jansi/1.11/ivys/ivy.xml Server access Error: Connection timed out: connect url=https://repo.scala-sbt.org/scalasbt/ivy-snapshots/org.fus
esource.jansi/jansi/1.11/ivys/ivy.xml :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: org.fusesource.jansi#jansi;1.11: not found
Error during sbt execution: Error retrieving required libraries
(see C:\Users\guowli\.sbt\boot\update.log for complete log)
Error: Could not retrieve jansi 1.11 C:\Users\guowli>
- 设置可用的repo或代理。
- 在用户目录下创建.sbt目录,放一个repositories文件
- 在用户的~/.sbt目录和安装目录,例如:“C:\Program Files (x86)\sbt\conf”
guowli@5CG450158J MINGW64 ~/.sbt
$ ll
total 17
drwxr-xr-x 1 guowli 1049089 0 Nov 2 11:29 1.0/
drwxr-xr-x 1 guowli 1049089 0 Nov 2 13:38 boot/
drwxr-xr-x 1 guowli 1049089 0 Oct 26 10:55 preloaded/
-rw-r--r-- 1 guowli 1049089 880 Nov 2 13:29 repositories
-rw-r--r-- 1 guowli 1049089 253 Nov 2 13:30 sbtconfig.txt guowli@5CG450158J MINGW64 ~/.sbt
$ cat repositories
[repositories]
local
maven-repo2-ivy-releases: http://repo2.maven.org/maven2/, , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
maven-repo2: http://repo2.maven.org/maven2/
maven-central-ivy-releases: http://repo1.maven.org/maven2/, , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
maven-central: http://repo1.maven.org/maven2/
sbt-releases-repo: http://repo.typesafe.com/typesafe/ivy-releases/, , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
sbt-plugins-repo: http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, , [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
guowli@5CG450158J MINGW64 ~/.sbt
$ guowli@5CG450158J MINGW64 ~/.sbt
$ cat sbtconfig.txt
# Set the java args to high -Xmx512M -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=128m # Set the extra SBT options -Dsbt.log.format=true -Dhttp.proxySet=true -Dhttp.proxyHost=10.144.1.10 -Dhttp.proxyPort=8080 -Dsbt.override.build.repos=true
guowli@5CG450158J MINGW64 ~/.sbt
$
参考信息:
3- 在REPL命令行下,编辑大块代码
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\guowli>scala
Welcome to Scala 2.12.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_101).
Type in expressions for evaluation. Or try :help. scala> :paste
// Entering paste mode (ctrl-D to finish) def qSort(x: List[Int]): List[Int] = {
if (x.length <= 2) x
else qSort(x.filter(x.head > _)) ++
x.filter(x.head == _) ++
qSort(x.filter(x.head < _))
} // Exiting paste mode, now interpreting. qSort: (x: List[Int])List[Int] scala> qSort(List(6, 4, 5, 3, 1, 2, 9, 8, 0, 7))
res0: List[Int] = List(0, 1, 2, 3, 4, 5, 6, 8, 7, 9) scala>
4- main方法
Scala - Tips的更多相关文章
- Scala的几个小tips
1. Main方法只能写在object而不是class里 2. Unit test只能针对class或者trait,不能给object做,解决方法,把object里面要测的方法拿出来放到trait里, ...
- gradle项目中如何支持java与scala混合使用?
之前写过一篇maven项目中java与scala如何混用,今天来看看gradle项目中如何达到同样的效果: 一.目录结构 基本上跟maven一样,tips:这一堆目录结构不用死记,后面会讲如何用gra ...
- 使用SBT构建Scala应用(转自git)
# 使用SBT构建Scala应用 ## SBT简介 SBT是Simple Build Tool的简称,如果读者使用过Maven,那么可以简单将SBT看做是Scala世界的Maven,虽然二者各有优劣, ...
- 【原】SBT构建Scala应用
[转帖] 原文地址:https://github.com/CSUG/real_world_scala/blob/master/02_sbt.markdown 尊重版权,尊重他人劳动成果,转帖请注明原文 ...
- scala模式匹配与样例类
样本类:添加了case的类便是样本类.这种修饰符可以让Scala编译器自动为这个类添加一些语法上的便捷设定.如下: 1.添加与类名一致的工厂方法.也就是说,可以写成Var("x") ...
- 【Scala-ML】使用Scala构建机器学习工作流
引言 在这一小节中.我将介绍基于数据(函数式)的方法来构建数据应用.这里会介绍monadic设计来创建动态工作流,利用依赖注入这种高级函数式特性来构建轻便的计算工作流. 建模过程 在统计学和概率论中, ...
- idea+scala sdk + scala插件
0X01 前言 我的主语言是python,说起java,想起了大二(三年前)上课时教过,课程设计的时候曾经做过个俄罗斯方块,后面其他设计copy代码读懂代码(再后面的课设就用python了). 本次涉 ...
- 使用SBT构建Scala应用【转载】
使用SBT构建Scala应用 SBT简介 SBT是Simple Build Tool的简称,如果读者使用过Maven,那么可以简单将SBT看做是Scala世界的Maven,虽然二者各有优劣,但完成的工 ...
- Mac上MySQL忘记root密码且没有权限的处理办法&workbench的一些tips (转)
忘记Root密码肿么办 Mac上安装MySQL就不多说了,去mysql的官网上下载最新的mysql包以及workbench,先安装哪个影响都不大.如果你是第一次安装,在mysql安装完成之后,会弹出来 ...
随机推荐
- OO第一单元三次作业总结
写在前面 第一单元作业是针对输入的多项式进行格式合法判断,然后进行求导,结果长度优化,最后输出.三次难度递增,不断添加新的需求,总体感觉在实现方面没有多大困难(?),个人主要困扰环节是寻找自己未知bu ...
- Vue+Webpack构建移动端京东金融(一、开发前准备)
一.开发前准备 1.node环境搭建 去node.js官网下载长期支持版本的node,采用全局安装,安装方式自行百度 网址:https://nodejs.org/zh-cn/ 安装后在cmd命令行运行 ...
- union: php/laravel command
#########Laravel###############2018-01-09 16:46:26 # switch to maintenance mode php artisan down # s ...
- 唉 调皮的ListView
唉 调皮的ListView 本次任务是 运用LisTView和自定义Adapter 来实现资料以列表的形式展现 来看代码 *** 布局代码老规矩 直接贴上 <LinearLayout andro ...
- MySQL数据库学习书单/书籍
MySQL数据库学习书单 1.MySQL必知必会(MySQL Crash Course) 豆瓣详情 主要适合前期掌握MySQL,豆瓣评分8.4. 2.高性能MySQL 豆瓣详情 主要适合进阶阅读使 ...
- SAS 循环与数组
SAS 循环与数组 SAS提供了循环语句以满足在编程中需要多次执行相同操作的情 况.有时还需要对不同的变量执行相同的操作,此时可定义SAS数组,并通过数组名和下标来引用这些变量. 1 循环 SAS循环 ...
- Spring学习-01
一.Srping 一个轻量级DI.IOC.AOP的容器框架 DI:依赖注入 IOC:控制反转 AOP:面向切面 二.构造器注入 Constructor-arg 属性:index/name/type/r ...
- MUI动态生成轮播图片
$$.ajax({ url:'http://localhost:8080/api/v1/food/listFeatureFood', type:'Get', xhrFields: {withCrede ...
- 解决更新ssh后在/etc/init.d下无sshd的问题
1.将远程服务器的/etc/init.d/ssd 文件拷贝到本地 scp /etc/init.d/ssh root@IP地址:/etc/init.d 2.vi /etc/init.d/sshd 3 ...
- fortran语言调用fortran写的dll
环境:vs2013+IVF 2011 有时候想把fortran写的常用的函数编译为DLL,以供不同的fortran exe调用,这时候应该怎样做呢?[参考 彭国伦老师 fortran95 程序设计 书 ...