目的

  1. 就是喜欢折腾

环境

  • 系统: ubuntu-gnome 16.04

  • vagrant: 1.8.5

  • virtualbox: 5.4.1

方法

  • 概括的来说
    就是在 vagrant 虚拟机中跑一个clojurerepl。然后在本机(宿主机)上使用clojuer的远程nrepl来链接它(虚拟机里的 repl),从而完成开发工作。

  • 具体的来说

    1. 安装必要的软件: vagrant,lein

    2. 使用vagrant init来生成 Vagrantfile

    3. 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
    4. 如果 lein 安装不成功(非常大可能),在可以在虚拟机启动之后使用 vagrant ssh 登录到虚拟机中手动安装

    5. 配置端口转发: config.vm.network "forwarded_port", guest: 8881, host: 8881

    6. 在宿主机中使用 lein repl :connect 127.0.0.1:8881 就可以链接到虚拟机的repl中了。

    7. emacs 作为开发环境的大家都是使用 cider 的吧?cider-connect 就可以满足需求了。


shjanken
268 声望4 粉丝