当前位置: 首页 > java >正文

Spark,IDEA编写Maven项目

IDEA中编写Maven项目

1.打开IDEA新建项目2.选择java语言,构建系统选择Maven

3.IDEA中配置Maven

注:这些文件都是我们老师帮我们在网上找了改动后给我们的,大家可自行在网上查找

编写代码测试HDFS连接

1.在之前创建的pom.xml文件中添加下列代码<dependencies>
    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-client</artifactId>
        <version>3.1.3</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.30</version>
    </dependency>
</dependencies>

注:这里的dependencies要这一步中的hadoop-client要和我们前面客户端准备中下载的hadoop保持一致。

2.配置日志信息。在项目的src/main/resources目录下,新建一个文件,命名为“log4j.properties”。

在文件中填入如下配置信息:

log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout  log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

3.创建包为org.example,并在下面创建Main类

编写代码如下:package org.example;
 
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
 
import java.io.IOException;
import java.net.URISyntaxException;
 
public class Main {
    public static void main(String[] args) throws URISyntaxException, IOException, InterruptedException {
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", "hdfs://hadoop100:8020"); // hadoop100是namenode所在的节点
        conf.set("hadoop.job.ugi", "root");
        FileSystem fs = FileSystem.get(conf);
        FileStatus[] fileStatuses = fs.listStatus(new Path("/"));
 
        // 打印文件信息
        System.out.println("根目录下的文件和目录信息:");
        for (FileStatus fileStatus : fileStatuses) {
            System.out.println("路径: " + fileStatus.getPath());
        }
        fs.close();
    }
}

4.运行

如果程序执行没有错误,就会打印出如下目录

http://www.xdnf.cn/news/890.html

相关文章:

  • c++算法-(1)
  • Precision Machine Dynamics/Mechatronics Design - 5
  • 算法工程师面试题与参考答案资料(2025年版)
  • Python实例题:Pvthon3实现简单的FTP认证服
  • Pycharm(九)函数的闭包、装饰器
  • 【TeamFlow】4.1 Git使用指南
  • 高级java每日一道面试题-2025年4月19日-微服务篇[Nacos篇]-Nacos未来的发展方向和规划有哪些?
  • mac 本地 docker 部署 nacos
  • 本地搭建一个简易版本的 Web3 服务
  • 【Easylive】AdminFilter 详细解析
  • Sentinel源码—7.参数限流和注解的实现一
  • 经典算法 输出在环上的点
  • 【阿里云大模型高级工程师ACP学习笔记】2.1 用大模型构建新人答疑机器人
  • 绿色体育直播赛事扁平自适应M25直播模板源码
  • Qt项目——汽车仪表盘
  • git详解
  • Vue v-for 循环DOM 指定dom个数展示一行
  • 【图像变换】pytorch-CycleGAN-and-pix2pix的学习笔记
  • Git 大文件使用 Git-LFS 管理,推送失败
  • .NET WPF 三维模型
  • 【xlog日志文件】怎么删除里面包含某些字符串的行(使用excel)
  • 垂直行业突围:工业软件在汽车、航空领域的 “破壁” 实践
  • 星云智控科技-优雅草星云物联网AI智控系统软件产品技术栈一览表-优雅草卓伊凡
  • android的 framework 是什么
  • 【MySQL】数据库安装
  • 第十四届蓝桥杯 2023 C/C++组 平方差
  • NLTK 基础入门:用 Python 解锁自然语言处理
  • 【回眸】error: failed to compile `xxxxxx`重装rust环境
  • 【数据结构和算法】4. 链表 LinkedList
  • 87233系列USB连续波功率探头