【hadoop】远程调试环境

根据上一节,我们已经安装完成hadoop伪分布式环境

hadoop集群环境配置_jdk1.8 441-CSDN博客

还没安装的小伙伴可以看看这个帖子

这一节我们要实现使用vscode进行远程连接,并且完成java配置与测试


目录

vscode

配置远程

安装java插件

新建java项目

配置依赖

Java项目编译,打包,运行

打包为可执行JAR

运行JAR程序

Hadoop集群运行程序


vscode

上官网下载vscode(这里默认你已经安装)

然后配置插件

Remote-SSH

配置远程

点卡开之后会出现SSH(下面的图是已经使用过后的结果)

会弹出远程连接的提示

直接输入虚拟机的ip即可

安装java插件

连接完后,需要在远程机子上安装java插件

在vscode插件页面搜索

Extension Pack for Java

新建java项目

你可以新建文件夹后在文件夹下面新建项目

新建文件夹

打开终端

Ctrl+~
mkdir ~/workplace

调出命令框

ctrl+shift+p

然后输入java

点击

  • 选择 no bulid tools

  • 选择刚才创建的 workplace 文件夹

命名

然后就会给你创建一个默认简单java项目

包括这些

配置依赖

打开settings.json文件

根据具体位置配置,以下图片中包括文件查找,根据查找的路径进行更改

最终

Java项目编译,打包,运行

目录结构

HelloWorld/

├── src/

│ └── com/

│ └── demo/

│ └── hello/

│ └── HelloWorld.java

└── bin/
package com.demo.hello;

public class HelloWorld {

public static void main(String[] args) throws Exception {

System.out.println("Hello, World!");

}

}

vscode会自动创建编译的bin目录

咱们直接运行就行

复制代码
javac -d bin src/com/demo/hello/HelloWorld.java

打包为可执行JAR

jar cvfe hello-demo.jar com.demo.hello.HelloWorld -C bin .

验证结构

jar tf hello-demo.jar

输出应包含

META-INF/MANIFEST.MF

com/demo/hello/HelloWorld.class

运行JAR程序

复制代码
java -jar hello-demo.jar

Hadoop集群运行程序

注意,这里要先启动hadoop集群

不然会出现如下错误

在终端运行

然后,准备hadoop环境

hdfs dfs -mkdir -p /input
hdfs dfs -put LICENSE.txt /input

会报错

检查文件(在常见位置)

复制代码
ls /usr/share/doc/*/LICENSE.txt
ls ~/Downloads/LICENSE.txt

查找Hadoop安装目录下的LICENSE文件(可能需要root权限)

复制代码
find $HADOOP_HOME -name "LICENSE*" 2>/dev/null

上传

复制代码
cp $HADOOP_HOME/LICENSE.txt .

继续运行

hdfs dfs -put LICENSE.txt /input

解决

继续

hdfs dfs -rm -r /output/res # 确保输出目录不存在

提交作业

hadoop jar hello-demo.jar MR_Sample.WordCount.WordCountMain /input/LICENSE.txt /output/res

ok!

相关推荐
鸭鸭鸭进京赶烤2 小时前
大学专业科普 | 云计算、大数据
大数据·云计算
G皮T5 小时前
【Elasticsearch】自定义评分检索
大数据·elasticsearch·搜索引擎·查询·检索·自定义评分·_score
掘金-我是哪吒8 小时前
分布式微服务系统架构第156集:JavaPlus技术文档平台日更-Java线程池使用指南
java·分布式·微服务·云原生·架构
亲爱的非洲野猪8 小时前
Kafka消息积压的多维度解决方案:超越简单扩容的完整策略
java·分布式·中间件·kafka
活跃家族8 小时前
分布式压测
分布式
搞笑的秀儿8 小时前
信息新技术
大数据·人工智能·物联网·云计算·区块链
SelectDB9 小时前
SelectDB 在 AWS Graviton ARM 架构下相比 x86 实现 36% 性价比提升
大数据·架构·aws
二二孚日9 小时前
自用华为ICT云赛道Big Data第五章知识点-Flume海量日志聚合
大数据·华为
前端世界10 小时前
HarmonyOS开发实战:鸿蒙分布式生态构建与多设备协同发布全流程详解
分布式·华为·harmonyos
DavidSoCool10 小时前
RabbitMQ使用topic Exchange实现微服务分组订阅
分布式·微服务·rabbitmq