目的
就是喜欢折腾
无
环境
系统:
ubuntu-gnome 16.04
vagrant: 1.8.5
virtualbox: 5.4.1
方法
概括的来说
就是在vagrant
虚拟机中跑一个clojure
的repl
。然后在本机(宿主机)上使用clojuer
的远程nrepl
来链接它(虚拟机里的repl
),从而完成开发工作。-
具体的来说
安装必要的软件:
vagrant
,lein
使用
vagrant init
来生成 Vagrantfile-
在 Vagrantfile 中添加
provision
脚本:config.vm.provision "shell", inline: <<-SHELL apt-get update apt-get install curl openjdk-7-jdk -y #安装 openjdk,当然也可以安装 oracle-jdk url https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein > /usr/bin/lein chmod 755 /usr/bin/lein lein repl :start :host 0.0.0.0 :port 8881 #在所有的网络接口上启动8881端口 SHELL
如果
lein
安装不成功(非常大可能),在可以在虚拟机启动之后使用vagrant ssh
登录到虚拟机中手动安装配置端口转发:
config.vm.network "forwarded_port", guest: 8881, host: 8881
在宿主机中使用
lein repl :connect 127.0.0.1:8881
就可以链接到虚拟机的repl
中了。用
emacs
作为开发环境的大家都是使用cider
的吧?cider-connect
就可以满足需求了。