前言
?书接上一回,在了解cljs基本语法后并在clojurescript.net的奇特错误提示后,我们必须痛定思痛地搭建一个本地的开发环境,以便后续深入地学习cljs。
现有的构建工具
?由于浏览器仅能运行JS,而无法直接运行cljs,因此我们需要搭建一个预编译环境将cljs编译成JS后再在浏览器中运行。预编译无非就是JVM和Nodejs两个环境,但具体使用时有如下几种构建工具。
直接JVM编译
Lein方案
Boot方案
Lumo方案
Shadow-cljs方案
cljs/tool方案
?其中Lein和Boot都是基于JVM编译环境,只是上层的构建方式有所不同,而Lein除了用于构建cljs外还用于构建clj;而Boot则专注于构建cljs。
?Lumo则是基于Nodejs编译环境。
?Shadow-cljs则是node-jre,就是用node模块管理的jvm。
?由于我们只需搭建一个刚好可用的开发环境即可,因此下面只介绍方案1。
搭建一个最基础的——直接JVM编译
下载依赖
Jdk8.0+
创建工程
# 在家目录下创建工程目录$ mkdir -p ~/hello_world/src/hello_world/# 复制cljs.jar文件到工程目录下$ cp ~/cljs.jar ~/hello_world/# 创建项目配置文件$ touch ~/hello_world/build.clj# 创建源码文件$ touch ~/hello_world/src/hello_world/core.cljs# 创建HTML文件$ touch ~/hello_world/index.html
在build.clj
文件中输入
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26
