1.操作系统是ubuntu .在终端用svn工具安装,如果没有svn工具,使用命令安装svn工具。
2.nutch 是使用svn进行源代码管理的,nutch svn 的地址是:http://svn.apache.org/repos/asf/nutch/tags/release-1.7/ release-1.xx 可能有所不同。使用它的源代码,而不是它发布的二进制版本,可以对他有更好的理解。根据网速不同,时间有所不同。
3.下载完成后,进入到release-1.7的文件夹,执行ant命令,nutch是用ant来编译源代码的。如果没有安装ant。
使用 sudo apt-get install ant执行安装。根据网速不同,时间有所不同。
4.nutch 使用ivy 进行依赖管理,ivy.xml中有依赖的第三方名字。
<dependencies> <dependency org="org.elasticsearch" name="elasticsearch" rev="0.90.1" conf="*->default"/>//Elasticsearch 是基于Lucene构建的开源的,分布式,RESTful搜索引擎,设计用于计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。支持通过http 使用JSON进行数据索引。 <dependency org="org.apache.solr" name="solr-solrj" rev="3.4.0" conf="*->default" /> //搜索服务器,基于Lucene,一款非常优秀的全文搜索引擎。 <dependency org="org.slf4j" name="slf4j-api" rev="1.6.1" conf="*->master" />//简单日志门面 <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.6.1" conf="*->master" />//简单日志门面 <dependency org="commons-lang" name="commons-lang" rev="2.6" conf="*->default" /> <dependency org="commons-collections" name="commons-collections" rev="3.1" conf="*->default" /> <dependency org="commons-httpclient" name="commons-httpclient" rev="3.1" conf="*->master" /> <dependency org="commons-codec" name="commons-codec" rev="1.3" conf="*->default" /> <dependency org="org.apache.hadoop" name="hadoop-core" rev="1.2.0" conf="*->default">//分布式系统基础架构 <exclude org="hsqldb" name="hsqldb" /> <exclude org="net.sf.kosmosfs" name="kfs" /> <exclude org="net.java.dev.jets3t" name="jets3t" /> <exclude org="org.eclipse.jdt" name="core" /> <exclude org="org.mortbay.jetty" name="jsp-*" /> <exclude org="ant" name="ant" /> </dependency> <dependency org="org.apache.tika" name="tika-core" rev="1.3" /> //解析文档工具 <dependency org="com.ibm.icu" name="icu4j" rev="4.0.1" /> <dependency org="org.mortbay.jetty" name="jetty-client" rev="6.1.22" /> <dependency org="log4j" name="log4j" rev="1.2.15" conf="*->master" /> <dependency org="xerces" name="xercesImpl" rev="2.9.1" /> <dependency org="xerces" name="xmlParserAPIs" rev="2.6.2" /> <dependency org="oro" name="oro" rev="2.0.8" /> <dependency org="com.google.guava" name="guava" rev="11.0.2" /> <dependency org="com.google.code.crawler-commons" name="crawler-commons" rev="0.2" /> <!--Configuration: test --> <!--artifacts needed for testing --> <dependency org="junit" name="junit" rev="3.8.1" conf="*->default" /> <dependency org="org.apache.hadoop" name="hadoop-test" rev="1.2.0" conf="test->default" /> <dependency org="org.mortbay.jetty" name="jetty" rev="6.1.22" conf="test->default" /> <dependency org="org.mortbay.jetty" name="jetty-util" rev="6.1.22" conf="test->default" /> <!--global exclusion --> <exclude module="jmxtools" /> <exclude module="jms" /> <exclude module="jmxri" /> </dependencies> 当执行ant 命令后,会自动去网上下载依赖的第三方包。Nutch里面本身是不包含上面哪些包的。只有执行ant命令后才会去网上自动下载。