建立Clojure开发环境-使用IDEA和Leiningen
OS: Mac OS X 10.10
IDEA 14.0.2 Community Edition
安装Leiningen
按照http://leiningen.org/的指南安装lein
阅读Leiningen教程中文版了解leiningen
如果需要使用代理,需要执行
export HTTPS_PROXY=host:port
export HTTP_PROXY=host:port
(当执行lein deps时,如果也需要使用代理,得export https_proxy以及export http_proxy)
安装La Clojure
安装IDEA插件La Clojure。进行IDEA后,点左上角的IntelliJ IDEA, 选preferences, 然后左边选Plugins, 点Browse Repositories, 搜索Clojure, 下载La Clojure。
新建项目
在workspace下建立clojure工程。输入 lein new groupId/artifactId。groupId和artifactId和Maven里的概念一致
比如我输入 lein new hs.clojure/learn, 就会依照模版建立一个clojure工程。
导入IDEA
这个工程直接导入IDEA不会被正确识别,因此需要在learn目录下再执行lein pom,生成相应的pom。
然后在IDEA中import project,选择Import project from external model, 然后点Maven,一路点下去。
配置main函数
在打开的IDEA工程中,打开src目录,在hs.clojure包中有learn.clj文件。
这个clojure文件中,并没有main函数,因此在IDEA中执行run, 什么也不会输出。
把这个文件的内容改一下
(ns hs.clojure.learn) (defn -main
[& args]
(println "Hello, World!"))
然后在IDEA中最上边的菜单中点Run, 选择Edit Configurations, 选中Run main function in the script namespace,点OK。
在Run菜单中执行Run "learn", 程序会打印出"Hello, World!"。
这时候,如果执行lein run, 会说“No :main namespace specified in project.clj”.
需要修改project.clj
(defproject hs.clojure/learn "0.1.0-SNAPSHOT"
:main hs.clojure.learn
:dependencies [[org.clojure/clojure "1.6.0"]])
保存后,执行lein run,输出"Hello, world!"
建立Clojure开发环境-使用IDEA和Leiningen的更多相关文章
- Clojure 开发环境 light table 和 Leiningen 安装指引
1 首先下载 Light table 然后 解压到到一文件夹.目录中千万不能有空格 下载地址 http://www.lighttable.com/ 2下载构建工具 下载地址 http://leinin ...
- ubuntu linux下建立stm32开发环境: 程序烧录 openocd+openjtag
原文出处: http://blog.csdn.net/embbnux/article/details/17619621 之前建立stm32开发环境,程序也已经编译好生成main.bin,接下来就是要把 ...
- emWin -- 模拟器系列1 - 如何建立模拟器开发环境
面对如此强大的emWin,大家是否都有跃跃欲试的冲动呢?但是没有硬件可以调试的童鞋,难道只能望洋兴叹?非也.非也.Segger公司早就考虑到了.Segger推出模拟器的目的不仅仅是为了解决没有硬件的烦 ...
- 轻松建立Silverlight开发环境
创建Silverlight 4开发环境,微软提供最简单的方法是使用Web Platform Installer,进行“一键安装”, 下载安装后,Web Platform Installer会自动检测哪 ...
- clojure开发环境配置git, vscode+Calva插件配置
万事开头难,全是犄角旮旯的细节. 1 安装lein 参见 https://www.cnblogs.com/xuanmanstein/p/10504401.html 2 创建工程 lein 参考http ...
- VMware下利用ubuntu13.04建立嵌入式开发环境之二
之前在VMware中安装完Ubuntu系统,接下来开始设置开发中用到的服务和工具,以及系统设计. 1.安装VMware工具:打开VMware软件,在菜单->VM->Install VMwa ...
- eclipse建立cocos2d-x开发环境
前提: 已经安装了eclipse.能够正常开发 android应用 环境:windows 工具:1.已经集成了adt的eclipse,能够开发android应用.没有的,能够下载.下载地址:http: ...
- vim配置clojure开发环境备忘录
1 需要使用的插件 vundle 使用教程 http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html vim-fireplace h ...
- VMware下利用ubuntu13.04建立嵌入式开发环境之五
tftp和nfs服务器配置 一.tftp服务器配置 1.安装软件包 1.1安装服务 apt-get install tftpd-hpa 1.2安装客户端 apt-get install tftp-hp ...
随机推荐
- iOS设备中WiFi、蓝牙和飞行模式的开启与关闭
转自:http://www.cnblogs.com/OtionSky/archive/2011/11/08/iOS_WiFi_Controller.html 今天写了一段有关在iPhone程序中开关W ...
- 老男孩-金角大王-python学习博客地址
http://www.cnblogs.com/alex3714/category/770733.html
- 编译android5.0源码的
java环境 Android 5.1 用到的jdk不再是Oracle 的 jdk ,而是开源的 openjdk,在ubuntu安装好后,使用如下命令安装jdk: $sudo apt-get insta ...
- 查找-find -grep
find#.#-name#"*pc"#|#xargs#grep#"Flag" “*.pc”设置要找的文件名grep后面是要找的字符串 #是空格
- 【转】JavaScript中undefined与null的区别
通常情况下, 当我们试图访问某个不存在的或者没有赋值的变量时,就会得到一个undefined值.Javascript会自动将声明是没有进行初始化的变量设为undifined. 如果一个变量根本不存在会 ...
- L013-oldboy-mysql-dba-lesson13
L013-oldboy-mysql-dba-lesson13 02 18:00 来自为知笔记(Wiz)
- 解决ListView滑动时卡的问题,实现异步加载图片解决
ListView是最为常见的空间之一,现在的应用的呈现形式大多数都需要用到ListView来呈现,以列表的方式最直观最便于操作. 那么在使用的过程中大家一定使用adapter适配器来匹配这个ListV ...
- canvas 的学习
canvas 绘制直线的API有: 1.moveTo()起点坐标. 2.lineTo()绘制的直线 3. fillStyle以及 flii()是绘制实体的 4. strokeStyle 和stroke ...
- Spark Streaming揭秘 Day35 Spark core思考
Spark Streaming揭秘 Day35 Spark core思考 Spark上的子框架,都是后来加上去的.都是在Spark core上完成的,所有框架一切的实现最终还是由Spark core来 ...
- 九度OJ做题记录 更新.....
2015年1月7日 20:34:23 题目1007:奥运排序问题 有点意思,以后想另外方法快速做出来 2015年1月7日 21:03:56 有一个技巧就是,写了三个比较函数cmp1,cmp2,cmp ...