最近朋友想用scala做web项目,个人研究了下,搭建了个scala的研发环境(ubuntu),网上资料很多不准确也比较老,在此做个备忘。

最早是看的哪个网页的忘记了,临时根据https://www.oschina.net/translate/tutorial-getting-started-scala-and-scalatra-part-i来配置下:

scala的web框架不多,我也就知道Finatra,Play Framework,Scalatra,Spray,都不了解,随便选的scalatra。

1.安装sbt

没难度,直接参考官方文档,http://www.scala-sbt.org/0.13/docs/Installing-sbt-on-Linux.html

2.安装scalatra

官方文档打不开,只有靠百度出来的了。。。

curl https://raw.github.com/n8han/conscript/master/setup.sh | sh

cs n8han/giter8

问题就出现在这了,在这之前需要安装其他的,但是真忘记了。。。根据错误提示+百度吧

3.创建scalatra项目

g8 scalatra/scalatra-sbt

4.启动

./sbt

注意,好多写的是

container:start

实际上已经更新成jetty run了

实在是没有找到地方修改jetty的启动端口

5.IDE

我直接官网上下的eclipse版本,不过用了下感觉问题不少,大部分情况不能正确import,需要手动去敲,由于scala可以使用java的类库,所以代码提示那好多类和方法看着头疼,ide极度不完善,和记事本写差不多。

6.sbt的eclipse

需要再安装一个sbt的eclipse插件,来把刚才的scala项目生成eclipse相关文件,在eclipse中导入

7.依赖引入

和maven差不多,直接都可以查找到sbt的写法,加入sbt中即可

8.DB

没有找到啥原生的,我也就网上随便找了个jdbc连接写了个,注意别忘记引入mysql的依赖就好了

写在最后,scala用了半天的感受:

1.IDE极度不完善

2.sbt不知道是否有maven里面mirror一类的概念,不然下国外的一大堆jar,我就hehe了

3.scala感觉像是各种语言的柔和,oo和函数式的风格都支持,然后语法特别灵活,团队没有一个约定的话风格差异会非常大,不同人会很难看懂

4.编译速度不敢认同,就一个hello world,4个类,编译了7秒,后面文件多了的话不敢想象

5.版本兼容,ide官网最新是2.11,sbt是2.12,然后才写了几个hello world就发现有的sbt能编译通过,ide里面报错,有的ide通过,sbt报错

6.说是无缝对接java,但是java都有了,为啥还要重复在scala里面重新造次轮子

7.过于灵活的,不同人写出来的代码质量差异会非常大,觉得只能小团队使用

8.效率,scala最后都是编译成class运行在jvm中,我不相信能有太大的差别

总结:没有深入使用,也许某些特定情况和特定人群适用,web不适用

scala linux 环境配置,scala在linux中配置开发环境相关推荐

  1. Windows环境下在IDEA编辑器中spark开发安装步骤

    以下是windows环境下安装spark的过程: 1.安装JDK(version:1.8.0.152) 2.安装scala(version:2.11/2.12) 3.安装spark(version:s ...

  2. Node 中的开发环境与生产环境 和 使用Morgan打印请求信息

    一.什么是开发环境与生产环境 环境,就是指项目运行的地方,当项目处于开发阶段,项目运行在开发人员的电脑上,项目所处的环境就是开发环境.当项目开发完成以后,要将项目放到真实的网站服务器电脑中运行,项目所 ...

  3. 配置Visual Studio Code的SciLab开发环境

    配置Visual Studio Code的SciLab开发环境 引言 整体思路 插件安装 设置环境变量 设置setting.json 引言 由于美国将一批中国高校列入了实体清单制裁,近日Mathwor ...

  4. python软件包自带的集成开发环境-实验一 熟悉Python的集成开发环境

    实验一 熟悉Python的集成开发环境 一.实验目的与要求 1.了解什么是Python: 2.了解Python的特性: 3.掌握下载和安装Python的方法: 4.学习执行Python命令和脚本文件的 ...

  5. eclipse android开发环境搭建_聊聊Spring boot2.X开发环境搭建和基本开发

    对Spring Boot的开发环境进行搭建,并对它的特点做进一步的了解,才能更好地对Spring Boot有更深入的介绍.但是无论如何都需要先来搭建Spring Boot的工程. 搭建Spring B ...

  6. 集成环境哪个好?四大PHP集成开发环境比较

    http://www.5icool.org/a/201505/a11537.html 专注了这么些年技术,没有养成记录和积累的习惯.如今乐于开源和分享经验,却停笔踌躇,不知该从何处说起.开通博客也有一 ...

  7. python的集成开发环境搭建_Window版本 - Python数据分析集成开发环境 Anaconda安装(超详细)...

    Window版本 - Python数据分析集成开发环境 Anaconda安装(超详细) 前沿 ​ Hello,各位看官,您是不是决定要学习Python数据分析,您是不是现在正在"学" ...

  8. 如何在LINUX上编译运行UE4库中的新环境

    在WINDOWS上的UE4中新建工程并将UE4中环境导入 具体操作如下网页所示 https://zhuanlan.zhihu.com/p/336673072 将新建的环境工程拷贝到LINUX系统中 进 ...

  9. linux上centos镜像磁盘,VirtualBox中配置linuxCentOS的本地磁盘镜像iso作为其软件源

    下载VirtualBox软件和CentOS的磁盘镜像(.iso文件) 在VirtualBox虚拟机中安装好CentOS,安装步骤不叙述. 开始配置 操作1 打开虚拟机设置 打开你的VirtualBox ...

  10. linux博通bcm4313无线网卡,Debian中配置broadcom bcm43XX无线网卡

    注:以上安装方法主要来自于Debian wiki(http://wiki.debian.org/wl) 第二: https://wiki.debian.org/bcm43xx#b43andb43leg ...

最新文章

  1. 如何根据keras的fit后返回的history绘制loss acc曲线
  2. 【优秀博文】知乎服务化的实践与思考
  3. springsecurity不拦截某个接口_SpringSecurity 默认表单登录页展示流程源码
  4. 【日常小记】linux中强大且常用命令:find、grep
  5. web服务器的简单实现——HTTP权威指南读书心得(七)
  6. vue 跳添加编辑页面传两个值_vuecli3开发多页面项目
  7. 20191017:C++入门经典书籍学习目录01
  8. echarts-市地图
  9. 形容人的内核是什么意思_【得到】人人都需要的精准表达术-老光
  10. 模电(八)放大电路静态工作点的稳定性
  11. 参加51CTO学院软考培训感想
  12. 数据标注是什么,如何高效完成数据标注?
  13. [XSY 3147]子集计数
  14. Java SpringMVC+H5飞翔的小鸟游戏微信小程序源码
  15. jquery-editable-select使用 绑定动态数据
  16. 新手小白如何快速学好PS平面设计?需要什么技巧?
  17. 内外网同时访问 路由(route) 转发
  18. 【ZZULIOJ】1107: 回文数猜想(函数专题)
  19. 影视APP开发5大必要功能详解
  20. 生活不是缺少乐趣,而是缺少发现

热门文章

  1. 如何在Microsoft PowerPoint中创建时间轴
  2. 怎么把迅雷正在下的东西的种子提取出来?
  3. aix自动清理oracle日志,aix_设立定期删除oracle日志归档
  4. python接口测试断言(2020-2-25)
  5. 商标名称和生产厂家名称不一致是什么原因?
  6. C语言实现Nim游戏
  7. VC++之 CreateEvent和SetEvent及WaitForSingleObject的用法
  8. 转载:ora12505解决方法
  9. Linux centos7网络配置
  10. linux截图,像qq截图一样好用的截图工具deepin-scrot