<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Maven &#8211; 编码无悔 /  Intent &amp; Focused</title>
	<atom:link href="https://www.codelast.com/tag/maven/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.codelast.com</link>
	<description>最优化之路</description>
	<lastBuildDate>Mon, 27 Apr 2020 18:02:27 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>[原创] 解决Java程序读写HDFS文件的错误：No FileSystem for scheme: hdfs</title>
		<link>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e8%af%bb%e5%86%99hdfs%e6%96%87%e4%bb%b6%e7%9a%84%e9%94%99%e8%af%af%ef%bc%9ano-filesystem-for-scheme-hdfs/</link>
					<comments>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e8%af%bb%e5%86%99hdfs%e6%96%87%e4%bb%b6%e7%9a%84%e9%94%99%e8%af%af%ef%bc%9ano-filesystem-for-scheme-hdfs/#respond</comments>
		
		<dc:creator><![CDATA[learnhard]]></dc:creator>
		<pubDate>Thu, 02 Mar 2017 09:33:34 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[原创]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[No FileSystem for scheme: hdfs]]></category>
		<guid isPermaLink="false">http://www.codelast.com/?p=9192</guid>

					<description><![CDATA[<p>
如果你在程序中（不是一个Hadoop job程序）有读写HDFS文件的逻辑，那么程序运行的时候可能会报下面的错：</p>
<blockquote>
<div>
		Exception in thread &#34;main&#34; java.io.IOException: No FileSystem for scheme: hdfs</div>
<div>
		&#160; &#160; &#160; &#160; at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2676)</div>
<div>
		&#160; &#160; &#160; &#160; at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2690)</div>
<div>
		&#160; &#160; &#160; &#160; at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94)</div>
<div>
		&#160; &#160; &#160; &#160; at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2733)</div>
<div>
		&#160; &#160; &#160; &#160; at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2715)</div></blockquote>&#8230; <a href="https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e8%af%bb%e5%86%99hdfs%e6%96%87%e4%bb%b6%e7%9a%84%e9%94%99%e8%af%af%ef%bc%9ano-filesystem-for-scheme-hdfs/" class="read-more">Read More </a>]]></description>
										<content:encoded><![CDATA[<p>
如果你在程序中（不是一个Hadoop job程序）有读写HDFS文件的逻辑，那么程序运行的时候可能会报下面的错：</p>
<blockquote>
<div>
		Exception in thread &quot;main&quot; java.io.IOException: No FileSystem for scheme: hdfs</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2676)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2690)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2733)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2715)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:382)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:181)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; ......</div>
</blockquote>
<div>
<span id="more-9192"></span></div>
<p>假设项目是由Maven打包的，那么有几个可能的原因是：</p>
<p><span style="background-color:#00ff00;">『1』</span>漏添加了Hadoop的依赖到pom.mxl中<br />
需要的依赖如下：</p>
<section class="output_wrapper" id="output_wrapper_id" style="font-size: 16px; color: rgb(62, 62, 62); line-height: 1.6; letter-spacing: 0px; font-family: &quot;Helvetica Neue&quot;, Helvetica, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, Arial, sans-serif;">
<pre style="font-size: inherit; color: inherit; line-height: inherit; margin-top: 0px; margin-bottom: 0px; padding: 0px;">
<code class="xml language-xml hljs" style="margin: 0px 2px; line-height: 18px; font-size: 14px; letter-spacing: 0px; font-family: Consolas, Inconsolata, Courier, monospace; border-radius: 0px; color: rgb(169, 183, 198); background: rgb(40, 43, 46); padding: 0.5em; overflow-wrap: normal !important; word-break: normal !important; overflow: auto !important; display: -webkit-box !important;">&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>org.apache.hadoop<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>hadoop-client<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>org.apache.hadoop<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>hadoop-common<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>org.apache.hadoop<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>hadoop-hdfs<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">dependency</span>&gt;</span></code></pre>
</section>
<p>注意，如果只有前两个依赖，那么程序可能不会有编译问题，但在运行的时候就会报标题里所说的错误。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
<span style="background-color:#00ff00;">『2』</span>打包不正确<br />
在打出的jar包中，应该在这个路径下有此文件：<span style="color:#0000ff;">META-INF</span><span style="color:#ff0000;">/</span><span style="color:#0000ff;">services</span><span style="color:#ff0000;">/</span><span style="color:#0000ff;">org.apache.hadoop.fs.FileSystem</span>，如果没有，那么<span style="color:#ff0000;">肯定</span>有问题；如果有，那么也<span style="color:#ff0000;">可能</span>有问题。假设你是用 Maven 的 shade 插件来打包的，那么它在pom.xml中的配置可能是这样的：</p>
<section class="output_wrapper" id="output_wrapper_id" style="font-size: 16px; color: rgb(62, 62, 62); line-height: 1.6; letter-spacing: 0px; font-family: &quot;Helvetica Neue&quot;, Helvetica, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, Arial, sans-serif;">
<pre style="font-size: inherit; color: inherit; line-height: inherit; margin-top: 0px; margin-bottom: 0px; padding: 0px;">
<code class="xml language-xml hljs" style="margin: 0px 2px; line-height: 18px; font-size: 14px; letter-spacing: 0px; font-family: Consolas, Inconsolata, Courier, monospace; border-radius: 0px; color: rgb(169, 183, 198); background: rgb(40, 43, 46); padding: 0.5em; overflow-wrap: normal !important; word-break: normal !important; overflow: auto !important; display: -webkit-box !important;"><span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">plugin</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;</span>org.apache.maven.plugins<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">groupId</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;</span>maven-shade-plugin<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifactId</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">executions</span>&gt;</span>
&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">execution</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">goals</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">goal</span>&gt;</span>shade<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">goal</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">goals</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">phase</span>&gt;</span>package<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">phase</span>&gt;</span>
&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">execution</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">executions</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">configuration</span>&gt;</span>
&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">filters</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">filter</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifact</span>&gt;</span>*:*<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">artifact</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">excludes</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>META-INF/*.SF<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>META-INF/*.DSA<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>META-INF/*.RSA<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">exclude</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">excludes</span>&gt;</span>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">filter</span>&gt;</span>
&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">filters</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">configuration</span>&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">plugin</span>&gt;</span></code></pre>
</section>
<p> 如果这样打出来的包不行，请参考<a href="http://stackoverflow.com/questions/17265002/hadoop-no-filesystem-for-scheme-file" rel="noopener noreferrer" target="_blank"><span style="background-color:#ffa07a;">这个链接</span></a>，在shade插件的&ldquo;configuraiton&rdquo;配置段里面添加这样一段内容：</p>
<section class="output_wrapper" id="output_wrapper_id" style="font-size: 16px; color: rgb(62, 62, 62); line-height: 1.6; letter-spacing: 0px; font-family: &quot;Helvetica Neue&quot;, Helvetica, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, Arial, sans-serif;">
<pre style="font-size: inherit; color: inherit; line-height: inherit; margin-top: 0px; margin-bottom: 0px; padding: 0px;">
<code class="xml language-xml hljs" style="margin: 0px 2px; line-height: 18px; font-size: 14px; letter-spacing: 0px; font-family: Consolas, Inconsolata, Courier, monospace; border-radius: 0px; color: rgb(169, 183, 198); background: rgb(40, 43, 46); padding: 0.5em; overflow-wrap: normal !important; word-break: normal !important; overflow: auto !important; display: -webkit-box !important;"><span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">transformers</span>&gt;</span>
&nbsp;&nbsp;<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">transformer</span>&nbsp;<span class="hljs-attr" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(165, 218, 45); word-wrap: inherit !important; word-break: inherit !important;">implementation</span>=<span class="hljs-string" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(238, 220, 112); word-wrap: inherit !important; word-break: inherit !important;">&quot;org.apache.maven.plugins.shade.resource.ServicesResourceTransformer&quot;</span>/&gt;
</span>
<span class="hljs-tag" style="font-size: inherit; color: inherit; line-height: inherit; margin: 0px; padding: 0px; word-wrap: inherit !important; word-break: inherit !important;">&lt;/<span class="hljs-name" style="font-size: inherit; line-height: inherit; margin: 0px; padding: 0px; color: rgb(248, 35, 117); word-wrap: inherit !important; word-break: inherit !important;">transformers</span>&gt;</span></code></pre>
</section>
<p>然后再试试。<br />
根据我的测试，在我所在的环境下，正确打出来的jar包中的&nbsp;<span style="color: rgb(0, 0, 255);">META-INF</span><span style="color: rgb(255, 0, 0);">/</span><span style="color: rgb(0, 0, 255);">services</span><span style="color: rgb(255, 0, 0);">/</span><span style="color: rgb(0, 0, 255);">org.apache.hadoop.fs.FileSystem&nbsp;</span>文件，其大小为 1.9K，如果不加 <span style="color:#008000;">transformers</span> 那一段配置，打出来的有问题的FileSystem文件的大小为 9百多字节。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
<span style="background-color: rgb(0, 255, 0);">『3』</span>Hadoop集群配置依赖<br />
要能正确读取HDFS文件，程序就需要知道Hadoop集群的配置信息，如果你不是用&ldquo;hadoop jar&rdquo;命令来运行你的程序，而是用&ldquo;java&rdquo;命令来运行的（例如 java com.codelast.MyProgramme），那么，程序就需要引入Hadoop集群的配置信息。<br />
Hadoop集群的配置保存在&nbsp;<span style="color:#0000ff;">core-site.xml</span> 和&nbsp;<span style="color:#0000ff;">hdfs-site.xml</span> 两个文件中，所以在打包的时候要把它们打到jar包里的根目录下。</p>
<p><span style="color: rgb(255, 255, 255);">文章来源：</span><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">https://www.codelast.com/</span></a><br />
<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;版权声明&nbsp;<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;<br />
转载需注明出处：<u><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><em><span style="color: rgb(0, 0, 255);"><strong style="font-size: 16px;"><span style="font-family: arial, helvetica, sans-serif;">codelast.com</span></strong></span></em></a></u>&nbsp;<br />
感谢关注我的微信公众号（微信扫一扫）：</p>
<p style="border: 0px; font-size: 13px; margin: 0px 0px 9px; outline: 0px; padding: 0px; color: rgb(77, 77, 77);">
	<img decoding="async" alt="wechat qrcode of codelast" src="https://www.codelast.com/codelast_wechat_qr_code.jpg" style="width: 200px; height: 200px;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e8%af%bb%e5%86%99hdfs%e6%96%87%e4%bb%b6%e7%9a%84%e9%94%99%e8%af%af%ef%bc%9ano-filesystem-for-scheme-hdfs/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[原创] 解决错误“class &quot;javax.servlet.FilterRegistration&quot;&#039;s signer information does not match signer information of other classes in the same package”</title>
		<link>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e9%94%99%e8%af%afclass-javax-servlet-filterregistrations-signer-information-does-not-match-signer-information-of-other-classes-in-the-same-packag/</link>
					<comments>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e9%94%99%e8%af%afclass-javax-servlet-filterregistrations-signer-information-does-not-match-signer-information-of-other-classes-in-the-same-packag/#respond</comments>
		
		<dc:creator><![CDATA[learnhard]]></dc:creator>
		<pubDate>Wed, 24 Feb 2016 12:59:29 +0000</pubDate>
				<category><![CDATA[原创]]></category>
		<category><![CDATA[综合]]></category>
		<category><![CDATA[javax.servlet.FilterRegistration]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[signer information]]></category>
		<category><![CDATA[依赖]]></category>
		<category><![CDATA[冲突]]></category>
		<category><![CDATA[解决]]></category>
		<guid isPermaLink="false">http://www.codelast.com/?p=8731</guid>

					<description><![CDATA[<p>
这是一个jar包冲突引起的Java程序错误，而且是runtime的错误，编译的时候不出错，一运行起来就挂。<br />
<span id="more-8731"></span><br />
大致的错误信息如下：</p>
<blockquote>
<div>
		Thread[main,5,main] exit with uncaught error java.lang.SecurityException: class &#34;javax.servlet.FilterRegistration&#34;&#39;s signer information does not match signer information of other classes in the same package</div>
<div>
		java.lang.SecurityException: class &#34;javax.servlet.FilterRegistration&#34;&#39;s signer information does not match signer information of other classes in the same package</div>
<div>
		&#160; &#160; &#160; &#160; at java.lang.ClassLoader.checkCerts(ClassLoader.java:895)</div></blockquote>&#8230; <a href="https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e9%94%99%e8%af%afclass-javax-servlet-filterregistrations-signer-information-does-not-match-signer-information-of-other-classes-in-the-same-packag/" class="read-more">Read More </a>]]></description>
										<content:encoded><![CDATA[<p>
这是一个jar包冲突引起的Java程序错误，而且是runtime的错误，编译的时候不出错，一运行起来就挂。<br />
<span id="more-8731"></span><br />
大致的错误信息如下：</p>
<blockquote>
<div>
		Thread[main,5,main] exit with uncaught error java.lang.SecurityException: class &quot;javax.servlet.FilterRegistration&quot;&#39;s signer information does not match signer information of other classes in the same package</div>
<div>
		java.lang.SecurityException: class &quot;javax.servlet.FilterRegistration&quot;&#39;s signer information does not match signer information of other classes in the same package</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.checkCerts(ClassLoader.java:895)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.preDefineClass(ClassLoader.java:665)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.defineClass(ClassLoader.java:758)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.net.URLClassLoader.access$100(URLClassLoader.java:73)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.net.URLClassLoader$1.run(URLClassLoader.java:368)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.net.URLClassLoader$1.run(URLClassLoader.java:362)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.security.AccessController.doPrivileged(Native Method)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.net.URLClassLoader.findClass(URLClassLoader.java:361)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.loadClass(ClassLoader.java:424)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)</div>
<div>
		&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.loadClass(ClassLoader.java:357)</div>
</blockquote>
<p>网上一搜就知道，这是jar包冲突引起的，也就是说，classpath中的两个版本不同的jar包都含有FilterRegistration类的实现，并且它们不兼容。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
在IntelliJ IDEA中使用&ldquo;Go to class&rdquo;功能（快捷键<span style="color:#0000ff;">Ctrl+N</span>），在里面输入&ldquo;<span style="color:#b22222;">FilterRegistration</span>&rdquo;，可以快速定位到这个类，从而得知它所在的jar包是javax.servlet-api-3.0.1.jar（你的项目可能版本不同，但这并不妨碍我们分析），也就是在pom.xml中引入的：</p>
<ol class="dp-xml" start="1" style="margin: 0px 0px 1px; padding: 2px; border: 0px; font-size: 12px; color: rgb(43, 145, 175); list-style-type: none; font-family: &quot;Courier New&quot;, Courier, mono;">
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">dependency</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;">&nbsp;&nbsp;<span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">javax.servlet</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></li>
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;">&nbsp;&nbsp;<span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">javax.servlet-api</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">dependency</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span></span></li>
</ol>
<p>
那为什么会产生冲突呢？虽然你的pom.xml文件（Maven的工程）里只包含有一个javax-servlet-api的依赖，但是有其他的jar包会间接依赖于其他版本的 servlet-api，从而可能会产生冲突。<br />
为了找出这个冲突的jar包，你可以使用IntelliJ IDEA的Maven插件<a href="http://www.codelast.com/?p=8721" rel="noopener noreferrer" target="_blank"><span style="background-color:#ffa07a;">Maven Helper</span></a>来帮忙，或者你不愿装新插件的话，直接用如下命令来导出各jar包的依赖关系：</p>
<section class="output_wrapper" id="output_wrapper_id" style="font-size: 16px; color: rgb(62, 62, 62); line-height: 1.6; letter-spacing: 0px; font-family: &quot;Helvetica Neue&quot;, Helvetica, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, Arial, sans-serif;">
<pre style="font-size: inherit; color: inherit; line-height: inherit; margin-top: 0px; margin-bottom: 0px; padding: 0px;">
<code class="bash language-bash hljs" style="margin: 0px 2px; line-height: 18px; font-size: 14px; letter-spacing: 0px; font-family: Consolas, Inconsolata, Courier, monospace; border-radius: 0px; color: rgb(169, 183, 198); background: rgb(40, 43, 46); padding: 0.5em; overflow-wrap: normal !important; word-break: normal !important; overflow: auto !important; display: -webkit-box !important;">mvn&nbsp;dependency:tree&nbsp;&gt;&nbsp;x.txt
</code></pre>
</section>
<p>在这里，我把结果输出到了一个文件 x.txt 中，内容类似于（仅部分）：</p>
<section class="output_wrapper" id="output_wrapper_id" style="font-size: 16px; color: rgb(62, 62, 62); line-height: 1.6; letter-spacing: 0px; font-family: &quot;Helvetica Neue&quot;, Helvetica, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, Arial, sans-serif;">
<pre style="font-size: inherit; color: inherit; line-height: inherit; margin-top: 0px; margin-bottom: 0px; padding: 0px;">
<code class="bash language-bash hljs" style="margin: 0px 2px; line-height: 18px; font-size: 14px; letter-spacing: 0px; font-family: Consolas, Inconsolata, Courier, monospace; border-radius: 0px; color: rgb(169, 183, 198); background: rgb(40, 43, 46); padding: 0.5em; overflow-wrap: normal !important; word-break: normal !important; overflow: auto !important; display: -webkit-box !important;">[INFO]&nbsp;+-&nbsp;org.apache.httpcomponents:httpclient:jar:4.2.3:compile
[INFO]&nbsp;+-&nbsp;org.apache.httpcomponents:httpcore:jar:4.2.1:compile
[INFO]&nbsp;+-&nbsp;org.eclipse.jetty.aggregate:jetty-all-server:jar:8.1.15.v20140411:compile
[INFO]&nbsp;|&nbsp;&nbsp;+-&nbsp;org.eclipse.jetty.orbit:javax.servlet:jar:3.0.0.v201112011016:compile
[INFO]&nbsp;|&nbsp;&nbsp;+-&nbsp;org.eclipse.jetty.orbit:javax.security.auth.message:jar:1.0.0.v201108011116:compile
[INFO]&nbsp;|&nbsp;&nbsp;+-&nbsp;org.eclipse.jetty.orbit:javax.mail.glassfish:jar:1.4.1.v201005082020:compile
[INFO]&nbsp;|&nbsp;&nbsp;+-&nbsp;org.eclipse.jetty.orbit:javax.activation:jar:1.1.0.v201105071233:compile
[INFO]&nbsp;|&nbsp;&nbsp;\-&nbsp;org.eclipse.jetty.orbit:javax.annotation:jar:1.1.0.v201108011116:compile
[INFO]&nbsp;+-&nbsp;com.jcraft:jsch:jar:0.1.44:compile
</code></pre>
</section>
<p>可见，间接依赖的jar包被列出来了。在输出的文件中查找&ldquo;<span style="color:#0000ff;">sevlet-api</span>&rdquo;，会找到好几个间接依赖了servlet-api的jar包，而它们正是不同于3.0.1的版本（我前面主动引入的是3.0.1的版本，间接引入的不是），例如hadoop-common就是一个&ldquo;幕后黑手&rdquo;，它依赖了 2.5 的servlet-api。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
于是我们需要在pom.xml中，视情况把不同版本的servlet-api给&ldquo;除掉&rdquo;，这里我选择的是除掉hadoop-common中的旧版本servlet-api：</p>
<ol class="dp-xml" start="1" style="margin: 0px 0px 1px; padding: 2px; border: 0px; font-size: 12px; color: rgb(43, 145, 175); list-style-type: none; font-family: &quot;Courier New&quot;, Courier, mono;">
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">dependency</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">org.apache.hadoop</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">hadoop-common</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">exclusions</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">exclusion</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;">&nbsp;&nbsp;<span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">javax.servlet</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">groupId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;">&nbsp;&nbsp;<span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">*</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">artifactId</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">exclusion</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li class="alt" style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">exclusions</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span><span style="margin: 0px; padding: 0px; border: 0px;">&nbsp;&nbsp;</span></span></li>
<li style="border: 0px; padding-left: 10px; line-height: 18px;">
		<span style="margin: 0px; padding: 0px; border: 0px; color: black;"><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&lt;/</span><span class="tag-name" style="margin: 0px; padding: 0px; border: 0px; color: rgb(127, 0, 85); font-weight: bold;">dependency</span><span class="tag" style="margin: 0px; padding: 0px; border: 0px; color: blue; font-weight: bold;">&gt;</span></span></li>
</ol>
<p>依次检查完所有的间接依赖，一个个处理好，再重新编译程序，测试，直到程序可以正常跑起来。<br />
这里需要特别注意，如果程序运行前export的CLASSPATH中的某个路径里有旧的jar包，一定要清理干净再测试，否则可能你已经在pom.xml中解决了问题，但无论怎么测都不行，仍然还是jar包冲突，结果发现是CLASSPATH中的某个路径下的旧jar包没清理干净导致的，那就浪费时间了。</p>
<p><span style="color: rgb(255, 255, 255);">文章来源：</span><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">https://www.codelast.com/</span></a><br />
<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;版权声明&nbsp;<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;<br />
转载需注明出处：<u><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><em><span style="color: rgb(0, 0, 255);"><strong style="font-size: 16px;"><span style="font-family: arial, helvetica, sans-serif;">codelast.com</span></strong></span></em></a></u>&nbsp;<br />
感谢关注我的微信公众号（微信扫一扫）：</p>
<p style="border: 0px; font-size: 13px; margin: 0px 0px 9px; outline: 0px; padding: 0px; color: rgb(77, 77, 77);">
	<img decoding="async" alt="wechat qrcode of codelast" src="https://www.codelast.com/codelast_wechat_qr_code.jpg" style="width: 200px; height: 200px;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e8%a7%a3%e5%86%b3%e9%94%99%e8%af%afclass-javax-servlet-filterregistrations-signer-information-does-not-match-signer-information-of-other-classes-in-the-same-packag/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>[原创] 在IntelliJ IDEA中使用插件查看Maven conflict</title>
		<link>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e5%9c%a8intellij-idea%e4%b8%ad%e4%bd%bf%e7%94%a8%e6%8f%92%e4%bb%b6%e6%9f%a5%e7%9c%8bmaven-conflict/</link>
					<comments>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e5%9c%a8intellij-idea%e4%b8%ad%e4%bd%bf%e7%94%a8%e6%8f%92%e4%bb%b6%e6%9f%a5%e7%9c%8bmaven-conflict/#respond</comments>
		
		<dc:creator><![CDATA[learnhard]]></dc:creator>
		<pubDate>Wed, 24 Feb 2016 06:56:25 +0000</pubDate>
				<category><![CDATA[原创]]></category>
		<category><![CDATA[综合]]></category>
		<category><![CDATA[conflict]]></category>
		<category><![CDATA[IntelliJ IDEA]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Maven Helper]]></category>
		<category><![CDATA[冲突]]></category>
		<guid isPermaLink="false">http://www.codelast.com/?p=8721</guid>

					<description><![CDATA[<p>
如果Maven引入的jar包有冲突，可以使用IntelliJ IDEA的<a href="https://plugins.jetbrains.com/plugin/7179?pr=idea" target="_blank" rel="noopener noreferrer"><span style="background-color:#ffa07a;">Maven Helper</span></a>插件来帮助分析。<br />
下面以<span style="color:#0000ff;">IntelliJ IDEA 15.0.3</span>为例，说明如何安装及使用这个插件。<br />
<span id="more-8721"></span><br />
<span style="background-color:#00ff00;">『1』</span>安装插件<br />
方法很简单，打开IntelliJ的 <span style="color:#b22222;">Settings</span><span style="color:#0000ff;">&#8594;</span><span style="color:#b22222;">Plugins</span><span style="color:#0000ff;">&#8594;</span><span style="color:#b22222;">Browser repositories</span>：<br />
<a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_1.png" style="width: 600px; height: 457px;" /></a><br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
在搜索框中填入&#8220;maven helper&#8221;，会搜到这个插件，再点击右边的&#8220;Install&#8221;按钮（我已经安装过了，所以不会显示出这个按钮）：<br />
<a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_2.png" /></a><br />
安装好之后会让你重启IntelliJ IDEA，插件才能生效。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
<span style="background-color:#00ff00;">『2』</span>使用插件<br />
在IntelliJ中打开项目的pom.xml文件，在文件编辑器的左下方，会看到两个tab，一个是&#8220;<span style="color:#0000ff;">Text</span>&#8221;，另一个是&#8220;<span style="color:#0000ff;">Dependency Analyzer</span>&#8221;：<br />
<img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_3.png" /></p>
<p>打开&#8220;Dependency Analyzer&#8221;，有可能你看到的会是这样一幅画面：<br />
<img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_4.png" /><br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
根据图中的错误提示，我们可以找到 <a href="https://youtrack.jetbrains.com/issue/IDEA-133331" target="_blank" rel="noopener noreferrer"><span style="background-color:#ffa07a;">IDEA-133331</span></a> 这个issue的问题，根据里面的描述，为了修正这个问题，我们可以这样干：<br />
在IntelliJ的&#160;<span style="color: rgb(178, 34, 34);">Settings</span><span style="color: rgb(0, 0, 255);">&#8594;</span><span style="color: rgb(178, 34, 34);">Build, Execution, Deployment</span><span style="color: rgb(0, 0, 255);">&#8594;</span><span style="color: rgb(178, 34, 34);">Build Tools</span><span style="color: rgb(0, 0, 255);">&#8594;</span><span style="color: rgb(178, 34, 34);">Maven</span><span style="color: rgb(0, 0, 255);">&#8594;</span><span style="color: rgb(178, 34, 34);">Importing</span><span style="color: rgb(178, 34, 34);">&#160;</span>中，为&#8220;VM options for importer&#8221;添加上&#8220;<span style="color:#0000ff;">-Didea.maven3.use.compat.resolver</span>&#8230; <a href="https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e5%9c%a8intellij-idea%e4%b8%ad%e4%bd%bf%e7%94%a8%e6%8f%92%e4%bb%b6%e6%9f%a5%e7%9c%8bmaven-conflict/" class="read-more">Read More </a></p>]]></description>
										<content:encoded><![CDATA[<p>
如果Maven引入的jar包有冲突，可以使用IntelliJ IDEA的<a href="https://plugins.jetbrains.com/plugin/7179?pr=idea" target="_blank" rel="noopener noreferrer"><span style="background-color:#ffa07a;">Maven Helper</span></a>插件来帮助分析。<br />
下面以<span style="color:#0000ff;">IntelliJ IDEA 15.0.3</span>为例，说明如何安装及使用这个插件。<br />
<span id="more-8721"></span><br />
<span style="background-color:#00ff00;">『1』</span>安装插件<br />
方法很简单，打开IntelliJ的 <span style="color:#b22222;">Settings</span><span style="color:#0000ff;">&rarr;</span><span style="color:#b22222;">Plugins</span><span style="color:#0000ff;">&rarr;</span><span style="color:#b22222;">Browser repositories</span>：<br />
<a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_1.png" style="width: 600px; height: 457px;" /></a><br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
在搜索框中填入&ldquo;maven helper&rdquo;，会搜到这个插件，再点击右边的&ldquo;Install&rdquo;按钮（我已经安装过了，所以不会显示出这个按钮）：<br />
<a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_2.png" /></a><br />
安装好之后会让你重启IntelliJ IDEA，插件才能生效。<br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
<span style="background-color:#00ff00;">『2』</span>使用插件<br />
在IntelliJ中打开项目的pom.xml文件，在文件编辑器的左下方，会看到两个tab，一个是&ldquo;<span style="color:#0000ff;">Text</span>&rdquo;，另一个是&ldquo;<span style="color:#0000ff;">Dependency Analyzer</span>&rdquo;：<br />
<img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_3.png" /></p>
<p>打开&ldquo;Dependency Analyzer&rdquo;，有可能你看到的会是这样一幅画面：<br />
<img decoding="async" alt="" src="http://www.codelast.com/wp-content/uploads/2016/02/intellij_maven_helper_4.png" /><br />
<span style="color: rgb(255, 255, 255);">文章来源：</span><a href="http://www.codelast.com/" target="_blank" rel="noopener noreferrer"><span style="color: rgb(255, 255, 255);">http://www.codelast.com/</span></a><br />
根据图中的错误提示，我们可以找到 <a href="https://youtrack.jetbrains.com/issue/IDEA-133331" target="_blank" rel="noopener noreferrer"><span style="background-color:#ffa07a;">IDEA-133331</span></a> 这个issue的问题，根据里面的描述，为了修正这个问题，我们可以这样干：<br />
在IntelliJ的&nbsp;<span style="color: rgb(178, 34, 34);">Settings</span><span style="color: rgb(0, 0, 255);">&rarr;</span><span style="color: rgb(178, 34, 34);">Build, Execution, Deployment</span><span style="color: rgb(0, 0, 255);">&rarr;</span><span style="color: rgb(178, 34, 34);">Build Tools</span><span style="color: rgb(0, 0, 255);">&rarr;</span><span style="color: rgb(178, 34, 34);">Maven</span><span style="color: rgb(0, 0, 255);">&rarr;</span><span style="color: rgb(178, 34, 34);">Importing</span><span style="color: rgb(178, 34, 34);">&nbsp;</span>中，为&ldquo;VM options for importer&rdquo;添加上&ldquo;<span style="color:#0000ff;">-Didea.maven3.use.compat.resolver</span>&rdquo;参数，例如，原来我的这个参数为&ldquo;-Xmx512m&nbsp;&rdquo;，修改之后变成了：</p>
<blockquote>
<p>
		-Xmx512m -Didea.maven3.use.compat.resolver</p>
</blockquote>
<p>注意，根据上面提到的issue链接里的描述，这个参数修改对不同的IntelliJ版本是不同的。<br />
这样修改之后，就可以看到Dependency Analyzer结果了。</p>
<p><span style="color: rgb(255, 255, 255);">文章来源：</span><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><span style="color: rgb(255, 255, 255);">https://www.codelast.com/</span></a><br />
<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;版权声明&nbsp;<span style="color: rgb(255, 0, 0);">➤➤</span>&nbsp;<br />
转载需注明出处：<u><a href="https://www.codelast.com/" rel="noopener noreferrer" target="_blank"><em><span style="color: rgb(0, 0, 255);"><strong style="font-size: 16px;"><span style="font-family: arial, helvetica, sans-serif;">codelast.com</span></strong></span></em></a></u>&nbsp;<br />
感谢关注我的微信公众号（微信扫一扫）：</p>
<p style="border: 0px; font-size: 13px; margin: 0px 0px 9px; outline: 0px; padding: 0px; color: rgb(77, 77, 77);">
	<img decoding="async" alt="wechat qrcode of codelast" src="https://www.codelast.com/codelast_wechat_qr_code.jpg" style="width: 200px; height: 200px;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.codelast.com/%e5%8e%9f%e5%88%9b-%e5%9c%a8intellij-idea%e4%b8%ad%e4%bd%bf%e7%94%a8%e6%8f%92%e4%bb%b6%e6%9f%a5%e7%9c%8bmaven-conflict/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
