XShell7 + Xftp7 + IDEA 打包MapReduce程序到集群运行
参考博客
【MapReduce打包成jar上传到集群运行】http://t.csdn.cn/2gK1d
【Xshell7/Xftp7 解决强制更新问题】http://t.csdn.cn/rxiBG
IDEA打包MapReduce程序
这里的打包是打包整个项目,后期等学会怎么打包单个指定的mapreduce程序再来更新博客。
1、编译打包
2、File -> Project Structure -> Artifacts
3、选择mapreduce程序的运行入口
4、点击 ok -> build -> build artifacts -> build
生成一个out目录 里面有我们打包好的jar包(默认名称就是我们的项目名.jar)
5、使用Xftp把jar包传到 linux。
XShell7 和 Xftp7 的过期解决办法
XShell.bat
@echo off
color 3e
title Xshell启动器
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c "^&chr(34)^&"%~0"^&chr(34)^&" ::","%cd%","runas",1)(window.close)&&exit::获取Xshell启动程序路径
::set Xshell="D:\Program Files (x86)\NetSarang\Xshell 7\Xshell.exe"
set Xshell=
::如果上边未设置Xshell变量值,那么会自动去查找当前已安装的Xshell路径
if not defined Xshell (for /F "delims=" %%T in ('where Xshell') do set Xshell="%%T"
)
::如果上边两处都没有得到Xshell路径,那么就由用户手动输入
if not defined Xshell (echo 请提供Xshell启动程序路径set /P Xshell=
)
if not defined Xshell (echo 拜拜我不干了!exit
)::在更改系统日期前,先获取系统当前日期
set cTime=%date:~0,4%-%date:~5,2%-%date:~8,2%
::修改系统日期,这里获取Xshell.exe的创建时间作为设置的系统日期
for /F "delims=" %%S in ('dir ^/TC %Xshell% ^| findstr "Xshell.exe"') do set Ftime=%%S
set fctime=%Ftime:~0,4%-%Ftime:~5,2%-%Ftime:~8,2%
date %fctime%
echo 修改系统日期完成::启动Xshell程序
start "" %Xshell%
echo 等待Xshell启动中
::等待xshell启动完成
timeout /T 10 /NOBREAK
::ping 0.0.0.0 -n 5> nul
echo Xshell启动完成::恢复系统日期
echo 恢复系统日期
date %cTime%
::ping 0.0.0.0 -n 5> null::第二部分,为当前脚本创建.lnk快捷方式,放到用户桌面
::把原有的lnk快捷方式删掉,注意有的是在public桌面,有的是在当前user桌面
if exist "%PUBLIC%\Desktop\Xshell 7.lnk" (del /f /q "%PUBLIC%\Desktop\Xshell 7.lnk")
if exist "%USERPROFILE%\Desktop\Xshell 7.lnk" (del /f /q "%USERPROFILE%\Desktop\Xshell 7.lnk")::由Xshell.bat创建的快捷方式,不存在才创建
set Desktop=%PUBLIC%\Desktop
if exist %Desktop%\Xshell.lnk goto:EOF
::切换到Xshell.bat脚本所在目录
cd /d %~dp0::创建一个临时的vbs脚本, 写入以下内容.
::创建一个 wscript.shell 对象.
echo set wshell = WScript.CreateObject("WScript.Shell") > create_shortcut.vbs
::在 vbs 脚本中声明快捷方式路径及名称,放到用户桌面
echo file_lnk = "%Desktop%\Xshell.lnk" >> create_shortcut.vbs
::创建一个 shortcut 对象.
echo set shortcut = wshell.CreateShortcut(file_lnk) >> create_shortcut.vbs
::下面开始设置 shortcut 对象的属性.
::1. 将目标路径设置为当前批处理脚本 Xshell7.bat
echo shortcut.TargetPath = "%cd%\Xshell7.bat" >> create_shortcut.vbs
::2. 为 Xshell.bat 设置参数(当然这里不需要)
:: echo shortcut.Arguments = "A B C" >> create_shortcut.vbs
::3. 将 "Xshell.bat所在目录" 设置为起始目录
:: 注意这里双写百分号用来避免百分号被转义 (即双写百分号表示单个 "%").
echo shortcut.WorkingDirectory = "%%cd%%" >> create_shortcut.vbs
::4. 添加快捷方式描述 (可选).
echo shortcut.Description = "Powerful TELNET/SSH terminal emulator" >> create_shortcut.vbs
::5. 添加快捷方式图标 (可选).
echo shortcut.IconLocation = %Xshell% >> create_shortcut.vbs
::6. 保存 vbs 脚本.
echo shortcut.Save >> create_shortcut.vbs::执行vbs脚本.
cscript create_shortcut.vbs
::删除临时的vbs脚本.
del /f /q create_shortcut.vbs
exit
Xftp7.bat
@echo off
color 3e
title Xftp启动器
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c "^&chr(34)^&"%~0"^&chr(34)^&" ::","%cd%","runas",1)(window.close)&&exit::获取Xftp启动程序路径
set Xftp="D:\Program Files (x86)\NetSarang\Xftp 7\Xftp.exe"
::set Xftp=
::如果上边未设置Xftp变量值,那么会自动去查找当前已安装的Xftp路径
if not defined Xftp (for /F "delims=" %%T in ('where Xftp') do set Xftp="%%T"
)
::如果上边两处都没有得到Xftp路径,那么就由用户手动输入
if not defined Xftp (echo 请提供Xftp启动程序路径set /P Xftp=
)
if not defined Xftp (echo 拜拜我不干了!exit
)::在更改系统日期前,先获取系统当前日期
set cTime=%date:~0,4%-%date:~5,2%-%date:~8,2%
::修改系统日期
for /F "delims=" %%S in ('dir ^/TC %Xftp% ^| findstr "Xftp.exe"') do set Ftime=%%S
set fctime=%Ftime:~0,4%-%Ftime:~5,2%-%Ftime:~8,2%
date %fctime%
echo 修改系统日期完成::启动Xftp程序
start "" %Xftp%
echo 等待Xftp启动中
::等待Xftp启动完成
timeout /T 10 /NOBREAK
::ping 0.0.0.0 -n 5> nul
echo Xftp启动完成::恢复系统日期
echo 恢复系统日期
date %cTime%
::ping 0.0.0.0 -n 5> null::第二部分,为当前脚本创建.lnk快捷方式,放到用户桌面
::把原有的lnk快捷方式删掉,注意有的是在public桌面,有的是在当前user桌面
if exist "%PUBLIC%\Desktop\Xftp 7.lnk" (del /f /q "%PUBLIC%\Desktop\Xftp 7.lnk")
if exist "%USERPROFILE%\Desktop\Xftp 7.lnk" (del /f /q "%USERPROFILE%\Desktop\Xftp 7.lnk")::由Xftp.bat创建的快捷方式,不存在才创建
set Desktop=%PUBLIC%\Desktop
if exist %Desktop%\Xftp.lnk goto:EOF
::切换到Xftp.bat脚本所在目录
cd /d %~dp0::创建一个临时的vbs脚本, 写入以下内容.
::创建一个 wscript.shell 对象.
echo set wshell = WScript.CreateObject("WScript.Shell") > create_shortcut.vbs
::在 vbs 脚本中声明快捷方式路径及名称,放到用户桌面
echo file_lnk = "%Desktop%\Xftp.lnk" >> create_shortcut.vbs
::创建一个 shortcut 对象.
echo set shortcut = wshell.CreateShortcut(file_lnk) >> create_shortcut.vbs
::下面开始设置 shortcut 对象的属性.
::1. 将目标路径设置为当前批处理脚本 Xftp7.bat
echo shortcut.TargetPath = "%cd%\Xftp7.bat" >> create_shortcut.vbs
::2. 为 Xftp.bat 设置参数(当然这里不需要)
:: echo shortcut.Arguments = "A B C" >> create_shortcut.vbs
::3. 将 "Xftp.bat所在目录" 设置为起始目录
:: 注意这里双写百分号用来避免百分号被转义 (即双写百分号表示单个 "%").
echo shortcut.WorkingDirectory = "%%cd%%" >> create_shortcut.vbs
::4. 添加快捷方式描述 (可选).
echo shortcut.Description = "Xftp: Secure file transfer software for MS Windows Platform." >> create_shortcut.vbs
::5. 添加快捷方式图标 (可选).
echo shortcut.IconLocation = %Xftp% >> create_shortcut.vbs
::6. 保存 vbs 脚本.
echo shortcut.Save >> create_shortcut.vbs::执行vbs脚本.
cscript create_shortcut.vbs
::删除临时的vbs脚本.
del /f /q create_shortcut.vbs
exit
只需要替换脚本中的 XShell7和Xftp7的安装目录(XShell.exe和Xftp的目录)即可。
完了直接桌面点击脚本文件。
运行命令
注意:MapReduce程序的main方法中的路径参数 从 args[1] 开始,然后args[2] ... 不然mapreduce程序报错。
# hadoop jar jar包名 全限定名 参数1:对应main方法中的args[0] 参数2:对应main方法中的args[1]
hadoop jar HDFS.jar com/lyh/mapreduce/wordcount2/WordCountRunner.java /wcinput /wcoutput
相关文章:

XShell7 + Xftp7 + IDEA 打包MapReduce程序到集群运行
参考博客 【MapReduce打包成jar上传到集群运行】http://t.csdn.cn/2gK1d 【Xshell7/Xftp7 解决强制更新问题】http://t.csdn.cn/rxiBG IDEA打包MapReduce程序 这里的打包是打包整个项目,后期等学会怎么打包单个指定的mapreduce程序再来更新博客。 1、编译打包 …...
微软D365 入门文章汇总以及各项认证介绍(持续跟新.....)
介绍 希望入门D365的同学们,需要具备的知识点,涉及C#,WebApi,前端知识,Power Platform等知识,以及Azure的知识点等,需要有了解。 实施Microsoft Dynamics 365 CE (12章)…...

vscode搭建Django自带后台管理系统
文章目录 一、django自带的后台管理系统1. 建表2. 后台管理系统2.1 创建账号2.2 运行后台2.3 登录 二、模版渲染1. 直接将数据渲染到页面2. 数据传递给js 三、数据库1. 查看当前数据库2. 创建UserInfo数据表3. Django rest framework配置 四、vue前端搭建1. 在Django项目的根目…...

Verilog零基础入门(边看边练与测试仿真)-时序逻辑-笔记(4-6讲)
文章目录 第四讲第五讲第六讲 第四讲 1、计数器 代码: //计数器 timescale 1ns/10ps module counter(clk,res,y); input clk; input res; output[7:0] y;reg[7:0] y; wire[7:0] sum;//1运算的结果(1࿰…...
2023-09-12力扣每日一题
链接: 1462. 课程表 IV 题意 一个pair<int,int>表示a是b的前置 进行n次查询,查询q是否是p的前置(可以不是直接前置) 解: 就是要把01、12、13这种能转换出02、03,弗洛伊德即可 无环无负权 实际…...
leetcode面试题:交换和(三种方法实现)
交换和: 给定两个整数数组,请交换一对数值(每个数组中取一个数值),使得两个数组所有元素的和相等。 返回一个数组,第一个元素是第一个数组中要交换的元素,第二个元素是第二个数组中要交换的元…...
前端可视化界面开发技术:实战与优化
引言 在当今的互联网时代,数据可视化已经成为信息展示和交互的重要方式。特别是在前端开发领域,可视化界面的应用越来越广泛,涉及到数据监控、分析和决策等多种场景。本文将深入探讨前端可视化界面开发的关键技术,通过实例解析提…...

Python实现机器学习(下)— 数据预处理、模型训练和模型评估
前言:Hello大家好,我是小哥谈。本门课程将介绍人工智能相关概念,重点讲解机器学习原理机器基本算法(监督学习及非监督学习)。使用python,结合sklearn、Pycharm进行编程,介绍iris(鸢尾…...
树结构处理,list和tree互转
1、实体类 package com.iot.common.test.entity;import lombok.Data;import java.util.List;/*** description:* author:zilong* date:2023/9/8*/ Data public class Node {//idprivate String id;//父节点idprivate String pId;//名称private String name;//编码private Stri…...

可视化大屏设计模板 | 主题皮肤(报表UI设计)
下载使用可视化大屏设计模板,减少重复性操作,提高报表制作效率的同时也确保了报表风格一致,凸显关键数据信息。 软件:奥威BI系统,又称奥威BI数据可视化工具 所属功能板块:主题皮肤上传下载(数…...
Spring Boot + Vue的网上商城之客服系统实现
Spring Boot Vue的网上商城之客服系统实现 在网上商城中,客服系统是非常重要的一部分,它能够为用户提供及时的咨询和解答问题的服务。本文将介绍如何使用Spring Boot和Vue.js构建一个简单的网上商城客服系统。 思路 在本教程中,我们学习了…...

RabbitMQ: return机制
1. Return机制 Confirm只能保证消息到达exchange,无法保证消息可以被exchange分发到指定queue。 而且exchange是不能持久化消息的,queue是可以持久化消息。 采用Return机制来监听消息是否从exchange送到了指定的queue中 2.Java的实现方式 1.导入依赖 &l…...

记录一些奇怪的报错
错误:AttributeError: module distutils has no attribute version 解决方案: 第一步:pip uninstall setuptools 第二步:conda install setuptools58.0.4 错误:ModuleNotFoundError: No module named _distutils_hac…...
Ubuntu 安装redis数据库,并设置开机自启动
1、下载安装包 wget http://download.redis.io/releases/redis-7.0.9.tar.gz 2、解压 tar -zxvf redis-7.0.9.tar.gz 3、复制到解压缩的包移动到/usr/local/ sudo mv ./redis-7.0.9 /usr/local/ 4、编译 cd /usr/local/redis-7.0.9 sudo make 5、测试: 时间会比较长࿰…...
基于开源模型搭建实时人脸识别系统(五):人脸跟踪
继续填坑,之前已经讲了人脸检测,人脸识别实战之基于开源模型搭建实时人脸识别系统(二):人脸检测概览与模型选型_开源人脸识别模型_CodingInCV的博客-CSDN博客,人脸检测是定位出画面中人脸的位置,…...
VUE | 配置环境变量
本篇目录 1. 创建开发环境配置文件2. 创建正式环境配置文件3. 在代码中访问环境变量4. 加载环境变量 在 Vue 项目中是使用 .env 文件来定义和使用不同的环境变量,这些文件在 Vue 项目根目录下创建。推荐有几种环境就创建几个 .env 文件,下面就开发环境和…...

Dynamic-TP入门初探
背景 在使用线程池的过程中,会出现一些痛点: 代码中创建了一个线程池,但是不知道那几个核心参数设置多少比较合适。凭经验设置参数值,上线后发现需要调整,改代码重新发布服务,非常麻烦。线程池相对开发人…...
Git的基本操作:远程操作
7 Git的远程操作 远程操作主要是指,在不同的仓库之间进行提交和代码更改。是一个明显的对等的分布式系统。其中本地个仓库与远程仓库,不同的远程仓库之间都可以建立这种关系。这种关系之间的操作主要有pull和push。 远程仓库 创建SSH key远程仓库和本…...
【IOC,AOP】spring的基础概念
IOC 控制反转 对象的创建控制权转交给外部实体,就是控制反转。外部实体便是IOC容器。其实就是以前创建java对象都是我们new一下,现在我们可以把这个new交给IOC容器来做,new出来的对象也会交由IOC容器来管理。这个new出来的对象则称为Bean。 …...

安全实战 | 怎么用零信任防范弱密码?
防范弱密码,不仅需要提升安全性,更需要提升用户体验。 比如在登录各类业务系统时,我们希望员工登录不同系统不再频繁切换账号密码,不再需要3-5个月更换一次密码,也不再需要频繁的输入、记录、找回密码。 员工所有的办…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
Bean 作用域有哪些?如何答出技术深度?
导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答,…...
用递归算法解锁「子集」问题 —— LeetCode 78题解析
文章目录 一、题目介绍二、递归思路详解:从决策树开始理解三、解法一:二叉决策树 DFS四、解法二:组合式回溯写法(推荐)五、解法对比 递归算法是编程中一种非常强大且常见的思想,它能够优雅地解决很多复杂的…...