| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Vim插件实现IDE效果Spark应用开发 -> 正文阅读 |
|
[大数据]Vim插件实现IDE效果Spark应用开发 |
Vim具有非常好的插件扩展性,是终端平台下系统软件调试、编程的优秀工具,为广大*ix使用者广泛使用。 大量的*ix服务器用户界面是字符界面,很少加装X window,因为这样致使系统容量和开销都大大增加,并且X window要通过远程桌面访问,不仅配置复杂,效果难能满足。故大量的服务器远程编码和配置都使用SSH连接,简单的字符界面终端访问,这样Vim轻量而效率高的特点得到真正发挥。 以下纪录Vim安装语言服务器和Scala Metals插件实现远程Spark应用开发。 1 安装Spark环境 这里不详述Spark环境安装过程,有网上有诸多文献可供参考。安装和配置主要包括JDK、Hadoop、Spark、Scala和Sbt等。建议JDK安装1.8版本,高版本有诸多意想不到的问题。我个人环境是jdk-8u301、hadoop-3.2.1、spark-3.1.1-bin-hadoop3.2、scala-2.12.10和sbt-1.5.5。Windows下hadoop-3.2.1有问题,改hadoop-3.2.2。 2 安装Scala metals插件需要Vim >= 8.1?或Neovim >= 0.3.1。参考:Vim | Metals (scalameta.org)https://scalameta.org/metals/docs/editors/vimCentOS 7软件库安装的Vim和Neovim版本都较低,可以直接下载安装Neovim release版,解压在用户目录,指定用户PATH路径运行即可,我用的是Neovim 0.5.1。:Releases · neovim/neovim (github.com)https://github.com/neovim/neovim/releases 安装vim-plug (安装在~/.config/nvim/autoload/nvim):
3 安装coc.nvim语言服务扩展。coc.nvim需node和yarn:
修改~/.config/nvim/init.vim:
junegunn/vim-plug: Minimalist Vim Plugin Manager (github.com)由于国内github.com访问的问题,先期修改github.com为hub.fastgit.org,参考:(103条消息) VIM-Plug安装插件时,频繁更新失败,或报端口443被拒绝等_htx1020的博客-CSDN博客https://blog.csdn.net/htx1020/article/details/114364510 打开你的nvim,执行如下命令进行插件安装:
安装后的插件路径是~/.config/nvim/plugged/,这里同时安装vim-airline插件,显示信息提示。 在init.vim添加:
4 安装coc-metals,用Neovim命令行执行:
5 Spark编程。新建项目,比如spark-test,进入spark-test目录,建目录结构src/main/scala:
在项目根下建build.sbt:
随build.sbt文件的新建和修改,Neovim会提示import build,建立和修改项目目录相应环境配置。初始可能会有较长时间,由于项目是实时增量编译的,因此之后的import build过程会比较短。 在src/main/scala下新建文件WordCount.scala:
随着你的代码输入,会有代码提示,进行代码补全,犹如一个很好的IDE编辑器。 完成代码编写,开启新的终端,进入项目根,运行sbt compile、sbt package、sbt run编译、打包和运行代码。 ?提交Spark运行: Good! ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:06:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |