java - 将 Nutch 1.17 与 Eclipse (Ubuntu 18.04) 集成
问题描述
我不知道该指南是否可能已过时,或者我做错了什么。我刚开始使用 nutch,我已经将它与 solr 集成,并通过终端通过一些网站进行爬网/索引。现在我正在尝试在 java 应用程序中使用它们,所以我一直在关注这里的教程: https ://cwiki.apache.org/confluence/display/NUTCH/RunNutchInEclipse#RunNutchInEclipse-RunningNutchinEclipse
我通过Eclipse下载了Subclipse、IvyDE和m2e,我下载了ant,所以我应该具备所有的先决条件。本教程中的 m2e 链接已损坏,因此我在其他地方找到了它。事实证明,eclipse 在安装时已经拥有它。
当我在终端中运行“ant eclipse”时,会收到大量错误消息。由于字数的原因,请在 此处放置一个包含整个错误消息的 pastebin 链接
我真的不确定我做错了什么。方向没有那么复杂,所以我真的不知道我在哪里搞砸了。
以防万一,这里是我们需要修改的 nutch-site.xml。
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>plugin.folders</name>
<value>/home/user/trunk/build/plugins</value>
</property>
<!-- HTTP properties -->
<property>
<name>http.agent.name</name>
<value>MarketDataCrawler</value>
<description>HTTP 'User-Agent' request header. MUST NOT be empty -
please set this to a single word uniquely related to your organization.
NOTE: You should also check other related properties:
http.robots.agents
http.agent.description
http.agent.url
http.agent.email
http.agent.version
and set their values appropriately.
</description>
</property>
<property>
<name>http.robots.agents</name>
<value></value>
<description>Any other agents, apart from 'http.agent.name', that the robots
parser would look for in robots.txt. Multiple agents can be provided using
comma as a delimiter. eg. mybot,foo-spider,bar-crawler
The ordering of agents does NOT matter and the robots parser would make
decision based on the agent which matches first to the robots rules.
Also, there is NO need to add a wildcard (ie. "*") to this string as the
robots parser would smartly take care of a no-match situation.
If no value is specified, by default HTTP agent (ie. 'http.agent.name')
would be used for user agent matching by the robots parser.
</description>
</property>
</configuration>
很多错误都与 Ivy 有关,所以我不知道 Nutch 和 eclipse 中安装的插件之间的 Ivy 版本是否兼容。
解决方案
按照 LOG 文件中的指导
[ivy:resolve] SERVER ERROR: HTTPS Required url=http://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.pom
[ivy:resolve] SERVER ERROR: HTTPS Required url=http://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.jar
[ivy:resolve] SERVER ERROR: HTTPS Required url=http://repo1.maven.org/maven2/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.pom
您应该在 ivy/ivy.xml 中使用更新的存储库 URL。一种选择是将 ivy.xml 中的每个 URL 从 http 更改为 https。
我认为,您使用的是一些旧版本,否则这个问题应该已经解决了。
推荐阅读
- html - 如果删除数组中的对象,如何删除本地存储类?
- azure - 如何创建 azure 应用程序或客户端 ID 来获取资源?
- javascript - Uncaught (in promise) DOMException: play() failed 因为用户没有先与文档交互
- sql - 从跨越多对多的 postgres 查询中删除 CROSS JOIN LATERAL
- mysql - 优化 100 万行的查询
- flutter - HiveError:已经有一个 TypeAdapter
- sql - 从 bigquery 中的未嵌套行创建一个数组
- go - 如何在循环中使用 gorutines 来填充结构?
- reactjs - 如何在 Ant Design 的 Icon 中添加 href?
- c++ - 哪个更好地在类中的&成员函数中声明变量