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. 用dtree实现树形菜单 dtree使用说明

    http://www.jb51.net/article/28566.htm 准备工作: 请从脚本之家http://www.jb51.net/jiaoben/31974.html下载dtree.zip文 ...

  2. Lucene 查询分页技术

    常用的Lucene查询代码如下所示,该代码的作用是将path路径下的所有索引信息返回 public String matchAll(String path) { try { Directory dir ...

  3. LightOJ 1096 - nth Term 矩阵快速幂

    http://www.lightoj.com/volume_showproblem.php?problem=1096 题意:\(f(n)  = a * f(n-1) + b * f(n-3) + c, ...

  4. 庞老师集群.ziw

    2017年2月17日, 星期五 庞老师集群 链接:http://pan.baidu.com/s/1mhSw2TE 密码:hzz4   更改子网IP,及网关:     null

  5. 在vm上面安装Linux系统

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

  6. 利用PhantomJS生成网站截图

    var page = require('webpage').create(); page.open('http://qq.com', function () { page.render('exampl ...

  7. 使用JavaScript实现使用鼠标画线的效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 【51nod】1238 最小公倍数之和 V3 杜教筛

    [题意]给定n,求Σi=1~nΣj=1~n lcm(i,j),n<=10^10. [算法]杜教筛 [题解]就因为写了这个非常规写法,我折腾了3天…… $$ans=\sum_{i=1}^{n}\s ...

  9. 可怕的npm蠕虫

    https://hackernoon.com/im-harvesting-credit-card-numbers-and-passwords-from-your-site-here-s-how-9a8 ...

  10. CRF原理解读

    概率有向图又称为贝叶斯网络,概率无向图又称为马尔科夫网络.具体地,他们的核心差异表现在如何求  ,即怎么表示  这个的联合概率. 概率图模型的优点: 提供了一个简单的方式将概率模型的结构可视化. 通过 ...