Ant

感觉是个和Make/Grunt类似的东东,build一个项目用的。安装很容易,跟装JDK类似,就是解压->设环境变量->没了。注意装之前要先确认Java装好了(有点废话)。

下载地址在这里,找到Current Release of Ant,有三种压缩包可以选。win下一般选zip,linux下一般选第二或第三个,下完之后解压到你平时放第三方软件的目录。懒得用浏览器下载的话,以最新版本1.9.4为例,我是这样装的:

$ cd #到你习惯放第三方二进制包的地方,比如我一般放在~/software
$ wget http://mirrors.gigenet.com/apache//ant/binaries/apache-ant-1.9.4-bin.tar.gz
$ tar xvzf apache-ant-1.9.-bin.tar.gz

wget的网址是随便从官网上复制的,mirror一刷新就会变。 下好之后照着这里说的设好$ANT_HOME,然后把$ANT_HOME/bin加进$PATH,比如我的~/.bashrc修改完之后要有这行。

export ANT_HOME=/home/joyeecheung/software/apache-ant-1.9.

其实下完解压之后manual文件夹里就有这堆文档了,可以直接本地看~~

接着重启终端,检查一下是不是装好了:

$ ant -version

比如我的装好之后就会显示

Apache Ant(TM) version 1.9. compiled on April  

按照官网的提示还可以装一下依赖,不过可能要下很久,我下了十五分钟= =|||

$ cd $ANT_HOME
$ ant -f fetch.xml -Ddest=system

安装JUit

其实最好别装2333333 所谓的安装不过是把junit.jar放到$CLASSPATH里,但是ant对$CLASSPATH无比敏感(不能有引号尾巴不能有/之类,一旦有就可能挂掉),一般都是需要的时候把junit.jar放到一个合适的地方然后放进classpath里编译使用。

另外其实ant自带JUnit的。。。不信去$ANT_HOME/lib看看。在ant里使用junit的方法参见这里

Ant&JUnit入门

命令行版的可以看官网的HelloWorld教程,跟着做一遍就会了,so easy~里面还附带怎么写弱弱的Junit测试(做的时候经常发现诡异的错误,然后把教程里的代码直接复制覆盖掉手打的又没事了,估计又是奇怪的typo。另外这个教程的JUnit貌似不能跑,他没有把编译测试写成一个target,要跑的话应该是测试代码的编译再写一个target,然后跑测试的target那里要include的不是.java是编译出的.class)

Eclipse版的可以直接Help->Search然后搜ant,就会有自带的教程,跟着做一遍也会了~ (P.S. Eclipse自带Ant也自带JUnit所以不用专门给它设置什么东西 囧~)

ant的task列表可以在这里找到,或者看manual文件夹下的tasksoverview.html

JUnit入门还是蛮简单的,不过是又一个测试框架而已,看着例子就可以写出来了,简单来讲就是import后各种assert……然后加一点装饰器什么的……

注意JUnit 4.11及以上的版本用的时候classptah里不仅要有junit的jar,还要有hamcrest-core的jar,不然会报class not found(诡异的是ant明明也自带了hamcrest-core都会报错……怒自己加进classpath就没事了)

其他一些教程:

一些JUnit的教程:

JUnit的API文档:http://junit.org/apidocs/index.html

SonarQube安装

首先去这里下载Sonar和Sonar-runner,下完之后解压,然后添加环境变量,要改动的地方有三个:

  1. 在Sonar解压出来的文件夹下,进入bin,找到对应平台的文件夹,比如我的

    /home/joyeecheung/software/sonar-3.7./bin/linux-x86-

    将它设成SONAR_HOME(貌似不必须,加进来纯粹为了方便)

  2. 把Sonar-runner解压出来的文件夹下的bin设成SONAR_ RUNNER_ HOME
  3. 把SONAR_ RUNNER_ HOME放进PATH里

我的设完大约长这样

export SONAR_HOME=/home/joyeecheung/software/sonar-3.7./bin/linux-x86-
export SONAR_RUNNER_HOME=/home/joyeecheung/software/sonar-runner-2.4
export PATH=$PATH:${SONAR_RUNNER_HOME}/bin

如果不改数据库的话这样就可以用了(默认会用自带的H2数据库)。

接着重启终端(如果改的是.bashrc,/etc/profile需要重启系统),跑起sonar的服务端

$ $SONAR_HOME/sonar.sh start

然后用浏览器访问http://localhost:9000。如果看不到可以耐心等一分钟先,我的就是要耐心等一会儿……=。= 然后就可以看到dashboard了,这个时候还没跑过任何检查所以dashboard还是空空如也。

然后按照这篇官方教程的指示,写一个sonar-project.properties在项目目录下,然后在目录下运行

$ sonar-runner

第一次运行会给你顺手下一堆插件装上,跑完以后去http://localhost:9000或者用sonar在终端输出里提示的那个url可以看到跑的结果。里面会有一堆很龟毛的代码修正提示,照着改就可以了。

另外官网上也有教怎么把Sonar放进Ant里跑,貌似这样就可以不用写那个sonar-project.properties了: http://docs.codehaus.org/display/SONAR/Analyzing+with+SonarQube+Ant+Task

Ant, JUnit以及Sonar的安装+入门资料的更多相关文章

  1. Express安装入门与模版引擎ejs

    Express安装入门与模版引擎ejs 目录 前言 Express简介和安装 运行第一个基于express框架的Web 模版引擎 ejs express项目结构 express项目分析 app.set ...

  2. Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1

    摘要: Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1 安装遇到问题请文末留言. 悦动智能公众号:aibbtcom AI这个概念好像突然就 ...

  3. spark一些入门资料

    spark一些入门资料 A Scala Tutorial for Java Programmers http://docs.scala-lang.org/tutorials/scala-for-jav ...

  4. Eclipse Che安装入门和使用(一)

    Eclipse Che序列博文如下: 安装和调试篇:Eclipse Che安装入门和使用(一) Web进阶篇:Eclipse Che开发Spring Web应用(入门) (二) 本文摘要: Eclip ...

  5. Git入门资料汇总

    Git是一个非常好用的版本控制工具,同时,它也是一个相对比较复杂的工具,想要掌握它还是需要花一番功夫的.网络上关于Git的入门资料已经很多了,我就不再重复了,直接把我学习的文章放在这里. Git详解 ...

  6. 「译」JUnit 5 系列:基础入门

    原文地址:http://blog.codefx.org/libraries/junit-5-basics/ 原文日期:25, Feb, 2016 译文首发:Linesh 的博客:JUnit 5 系列: ...

  7. Solr安装入门、查询详解

    Solr安装入门:http://www.importnew.com/12607.html 查询详解:http://www.360doc.com/content/14/0306/18/203871_35 ...

  8. Docker安装入门 -- 应用镜像

    Docker安装入门 -- 应用镜像 WordPress  1.docker build -t csphere/wordpress:4.2 .  2.docker run -d -p 80:80 -- ...

  9. Docker安装入门 -- 中间件镜像

    Docker安装入门 -- 中间件镜像 php-fpm 1.docker build -t csphere/php-fpm:5.4 .   //在当前目录下创建镜像 2.docker run -d - ...

随机推荐

  1. 框架----Django内置Admin

    Django内置的Admin是对于model中对应的数据表进行增删改查提供的组件,使用方式有: 依赖APP: django.contrib.auth django.contrib.contenttyp ...

  2. Java之基础20160806

    注意这里介绍的JAVA基础是指你对C语言已经比较熟练或者有一定基础了,再学习如下这知识就会比较快. 1.JAVA也是从MAIN开始执行,但是要先定义类,文件名要与类名一致并且类名首字母要大写,同时JA ...

  3. 关于EMGU CV的那些事——1.环境搭建(win8 vs2012 emgucv3.0)

    http://blog.csdn.net/aptx704610875/article/details/46045689 楼主读研阶段研究图像处理,想用C#实现PTAM/PTAMM算法并用UNITY创建 ...

  4. SP1487 PT07J - Query on a tree III (主席树)

    SP1487 PT07J - Query on a tree III 题意翻译 你被给定一棵带点权的n个点的有根数,点从1到n编号. 定义查询 query(x,k): 寻找以x为根的k大点的编号(从小 ...

  5. mongodb replica set 和 nodejs中使用mongoose连接replica

    一.mongodb replication 介绍 官网上的第一句话就是Replication is the process of synchronizing data across multiple ...

  6. [Java多线程]-Thread和Runable源码解析之基本方法的运用实例

    前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...

  7. ACM-ICPC2018 沈阳赛区网络预赛-E-The cake is a lie

    You promised your girlfriend a rounded cake with at least SS strawberries. But something goes wrong, ...

  8. bzoj 3884 欧拉定理

    求$$2^{2^{2^{2^{…}}}} mod n$$的值,其中n有1e7. 老实说这题挺有趣的,关键是怎么化掉指数,由于是取模意义下的无限个指数,所以使用欧拉定理一定是可以把指数变为不大于$\va ...

  9. 在vm上面安装Linux系统

    1 在vm上面安装Linux系统 1  以管理员的身份运行VMware:  点击VM图标然后右键属性 ,点兼容性 ---特权 等级 选择 以管理员的身份运行此软件          2 . 添加一个虚 ...

  10. 重构改善既有代码设计--重构手法06:Split Temporary Variable (分解临时变量)

    你的程序有某个临时变量被赋值超过一次,它既不是循环变量,也不被用于收集计算结果.针对每次赋值,创造一个独立.对应的临时变量 double temp = 2 * (_height + _width); ...