Hadoop FileSystem API打jar包並執行
阿新 • • 發佈:2019-01-02
我們要寫的 是 新增資料夾的 功能
1.我們建立一個maven專案
架構
2.pom.xml節點
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> <artifactId>Y2_SSH</artifactId> <groupId>cn.happy</groupId> <version>1.0-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>WordCount</artifactId> <packaging>war</packaging> <name>WordCount Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>2.8.0</version> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.8.0</version> </dependency> <!--hadoop--> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.8.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-mapreduce-client-jobclient --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-jobclient</artifactId> <version>2.8.0</version> <scope>provided</scope> </dependency> <!-- https://mvnrepository.com/artifact/commons-cli/commons-cli --> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.2</version> </dependency> </dependencies> <build> <finalName>WordCount</finalName> </build> </project>
版本最好和你的hadoop版本一樣
我們寫一個類:
package demo; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import java.io.IOException; /** * Created by linlin on 2017/12/15. */ public class HDFSMkDir { public static void main(String[] args) throws IOException { Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(conf); fs.mkdirs(new Path("/sllLove")); } }
這個程式碼執行之後我們期待的效果是 在hdfs的根目錄新增一個sllLove的資料夾
程式碼我們寫好了 我們開始打jar包了
這個我們弄好是沒有的 這個是我的 因為你還差一步
把你剛剛弄的jar build一下
然後目錄裡面就有了
然後我們開啟我們的 xftp
我們連線一下 master虛擬機器
我們把這個我們需要的jar拖到 我們的hadoop中
傳到這個目錄下面 因為我們需要的jar包都在這裡面
然後我們連線shell
走到那個jar的目錄下面
執行命令hadoop jar jar包名 類的全名
hadoop jar hadoop.jar demo.HDFSMKDir
然後我們查詢 結果果然是 新增成功了
還有刪除。。等等一系列操作我就不一一列舉了