本文解决的问题首先适用于如下人群:在mac上开发hadoop程序,并且适用maven来管理项目的广大程序猿们,如果你问题不适合该环境,可以绕道而行,当然如果你有兴趣阅读本文,欢迎。
我想在mac上玩hadoop或者研究开发hadoop的果粉来说,碰见这个问题,一定让你很头大。用maven打的可执行jar包,在linux上运行的好好的,但是在mac上就是不行,并且报的错误如下:
Exception in thread "main" java.io.IOException: Mkdirs failed to create /Users/chengdedeng/work/hadoop-0.21.0/myspace/hadooptmp/hadoop-unjar5053508897247834450/license
看到这个错误之后你刚开始觉得很简单,难道没有权限,那告诉你吧,你的想法是错误的。
当然我的命令用的是hadoop jar ***.jar了,因为我打的是可执行的jar包,所以不需要输入后面的参数,这个不多说。为什么会出现这样的错误呢?首先得必须说一下hadoop jar的运行机制,他会自动解压jar包,然后执行你的main函数,解压的过程中不能创建license这个文件夹,因此出现问题。那是不是hadoop的问题呢?肯定不是,因为在linux服务器上可以运行,在mac上不能运行,说明hadoop不存在问题。所以只可能是maven打的jar包出现问题,不多说废话,直接上打可执行jar包的代码吧!
<!--打可执行的jar包,如果使用了IOC容器,需要下面的配置-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<!--woodstox includes a "LICENSE" file in its jar root that conflicts with the "license"
directory on case-insensitive file systems-->
<!--<filter>-->
<!--<artifact>org.codehaus.woodstox:wstx-lgpl</artifact>-->
<!--<excludes>-->
<!--<exclude>LICENSE</exclude>-->
<!--</excludes>-->
<!--</filter>-->
<!--remove signature files-->
<!--<filter>-->
<!--<artifact>*:*</artifact>-->
<!--<excludes>-->
<!--<exclude>META-INF/*.SF</exclude>-->
<!--<exclude>META-INF/*.DSA</exclude>-->
<!--<exclude>META-INF/*.RSA</exclude>-->
<!--<exclude>license/*</exclude>-->
<!--</excludes>-->
<!--</filter>-->
</filters>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.ddmap.hadoop.db.mapreduce.cityofuser.Main</mainClass>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
碰见该问题是只需要放开我注销的那部分就ok了,如果还有问题,可以mail我。
邮箱:mapserver000@gmail.com
参考文章:https://issues.apache.org/jira/browse/MAHOUT-780
https://github.com/wpm/Hadoop-GATE/blob/master/pom.xml
分享到:
相关推荐
官方版本,亲测可用
完全可以根据github的要求来配置,我只是没分了~ 官网地址:https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration#add-memcached-session-manager-jars-to-tomcat
官方版本,亲测可用
官方版本,亲测可用
官方版本,亲测可用
官方版本,亲测可用
官方版本,亲测可用
官方版本,亲测可用
标题和描述中提到的"jars-20221025.tar"是一个压缩文件,通常在IT行业中,这种格式表示的是一个归档文件,使用了“tar”命令在Unix或Linux环境中创建。"tar"是tape archive的缩写,最初设计用于将文件备份到磁带中,...
5. GraphX:用于图计算,提供了图操作API,支持Pregel图计算模型。 与Hadoop 2.7的兼容性意味着Spark可以无缝地集成到Hadoop生态系统中,使用HDFS作为默认的数据存储系统,同时也能与YARN资源管理器配合,进行集群...
官方版本,亲测可用
Struts1.2-jars.zip 是一个专门为Java开发者准备的压缩包,包含了Struts1.2框架所需的多个jar文件。Struts是一个非常经典的MVC(Model-View-Controller)架构框架,它在Java Web开发中占有重要地位,尤其是在早期的...
这个压缩库是由Groupon开发并维护的,它实现了LZO(Lempel-Ziv-Oberhumer)压缩算法,这是一种快速但压缩率相对较低的无损压缩算法。 标题提到的"hadoop-lzo-0.4.21-SNAPSHOT jars"是一组特定版本的Hadoop-LZO库,...
标题“tomcat8-session-jars.zip”提示我们这是一个与Tomcat8相关的压缩文件,特别是关于session管理和集群同步的jar包。描述中指出,这个压缩包包含实现Tomcat8集群环境中session域数据同步和共享所需的jar文件,...
more jars for Simple Logging Facade for Java (SLF4J) to your CLASSPATH. - To use the X DevAPI features in Connector/J, you also need the external library protobuf-java, which you can download ...
最新版的Cloudsim 仿真平台 已支持容器云平台仿真。主要功能特点: *支持大型云计算数据中心的建模和仿真 *支持虚拟化服务器主机的建模和仿真,以及为虚拟机配置主机资源的可定制策略 *支持应用程序容器的建模和...
《使用JMeter进行WebSocket协议测试》 在现代Web应用程序中,WebSocket已经成为实时通信的重要协议,它提供了双向全双工通信,使得服务器与客户端可以实时交换数据。为了对WebSocket服务进行性能测试和负载测试,...
Place libs/DraggableGridView.jar into your project's directory and add it to the build path (http://www.wikihow.com/Add-JARs-to-Project-Build-Paths-in-Eclipse-(Java)) Add an import to the activity ...
学习spring所需要的jars c3p0-0.9.1.jar com.springsource.net.sf.cglib-2.2.0.jar com.springsource.org.aopalliance-1.0.0.jar com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar commons-logging-...
Binary JARs (includes the source to let IDEs provide context-sensitive help) Javadocs Unstable: 2.6.0-RC2 Binary JARs (includes the source to let IDEs provide context-sensitive help) Javadocs jMock 1...