Shell脚本开发过程中遇到的问题处理
1. 执行shell脚本报 Unsupported major.minor version 52.0
报错原因:java文件jdk和服务器上的jdk不匹配,
解决方法:
a.查看当前服务器用的jdk是哪个版本:java -version
b.修改本地代码编译版本,如下图所示:

2.shell调有package修饰的类的时候,报NoClassDefFoundError
shell文件内容:
echo "htllo test"
java shell.PackageTest
摆放位置:

报错信息

报错原因:
这个java文件是带pacakge的,文件展示时候就应该把package文件夹加进去。
如下图所示:

3.shell调java传递最后一个参数是字符串,接收的却是数字型

报错原因(最初解决方案,不完善):
最后一个参数不能是字符串,把这个参数放到前面,把数值型参数放到最后,问题就解决了。
真实报错原因:
脚本中存在一句REPORT_TIME="$3 $4:00",REPORT_TIME 接收了两个参数,给java传一个变量REPORT_TIME,java main方法args数组接收了两个参数。
总结:
看到java main方法这边接受的最后一个参数不对,
a.先按正常逻辑把整个代码看一遍,看看是否哪里出现了逻辑错误。
b.可以从很多方面去做尝试,比如
在shell脚本在执行调用java文件前一句先打印这个参数看看对不对
把这个参数放到前面试一下,看看结果是否正常
在后面添加几个参数,看看是不是参数shell会对参数个数作限制
Shell脚本开发过程中遇到的问题处理的更多相关文章
- history 查看历史操作记录在shell脚本执行中无法显示问题
今天使用shell脚本想查看历史操作命令的记录于是写了一个再简单不过的脚本,可是以chmod +x 权限执行./test.sh发现执行后没有任何反应.于是查找原因:将脚本文件中的#!/bin/bash ...
- 拾遗:Perl 在 Shell 脚本编程中的应用
Perl 对我用途,仅是作为 Shell 脚本中的文本处理器:在较大的软件工程里,更多的是使用 C.go 等编译型语言. Perl 是一种历史比较悠久的动态编程语言,在各种类 Unix 系统中得到了应 ...
- Shell脚本文件中常用的操作语句
1. 清空文件中的内容 cat /dev/null >> /var/log/messages 2. 脚本中判断用户是不是root用户 ROOT_UID = 0 # ...
- shell脚本程序中循环、判断语句的介绍
shell的循环主要有3种,for,while,until shell的分支判断主要有2种,if,case 一,for循环 C/C++ Code复制内容到剪贴板 #!/bin/bash for fil ...
- 三种Shell脚本编程中避免SFTP输入密码的方法
最近编程中用到sftp上传文件,且需要用crontab预设定时上传事件.而sftp不同于ftp,没有提供选项如 -i 可以将密码直接编码进程序.使用sftp指令,会自动请求用户输入密码. 总结一下可以 ...
- Shell脚本编程中的几个问题
条件语句 正确的写法: if [ $1 = "-f" ] #注意这里,前后方括号和中间的内容之间必须有空格! then commands fi 错误的写法: if [$1 == & ...
- Shell脚本编程中截取字符串方法
例如: 假设变量var=http://www.baidu.com/111.png 1.#号截取(删左留右) echo ${var#*//} # 号是运算符,*// 表示从左边开始删除第一个 // 号及 ...
- shell脚本编写笔记
包含转载内容,转载自http://wenku.baidu.com/link?url=jtCHxEYzgGve6P64U3JRQRgU6nhpGvqFLLpWu9I2Htq6hi9TGLudRFkk7r ...
- Shell脚本中单引号(‘)和双引号(“)的使用区别
在Linux操作系统上编写Shell脚本时候,我们是在变量的前面使用$符号来获取该变量的值,通常在脚本中使用”$param”这种带双引号的格式,但也有出现使用'$param'这种带引号的使用的场景,首 ...
随机推荐
- 菜鸟入门【ASP.NET Core】2:部署到IIS
配置IIS模块 ASP.NET Core Module载地址:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/asp ...
- ios --xib自定义,解决在导航栏不透明的情况下,自定义xib view高度被压缩64的问题
在使用xib自定义view的时候,个人习惯性的直接使用xib中的约束,所以自然而然的要打开Autolayout.以前在使用的时候没有发现什么问题,最近项目中使用的时候突然发现在导航栏透明的情况下,出现 ...
- 【读书笔记】iOS-处理内存警告
-(void)didReceiveMemoryWarning{ [super didReceiveMemoryWarning]; } 在这里你需要释放掉所有占用了很大内存的对象,如果你忽略了这个警告, ...
- jquery获取标签名,获取id
var elementId = $(this).attr("id"); var tagName = $(this)[0].tagName;
- SQL Server 2012 读写分离设置 - AlsoIn
原文转至:http://www.tuicool.com/articles/a6rmiam/ 引用: http://technet.microsoft.com/zh-cn/library/jj16176 ...
- VMware虚拟机安装教程详解图文
学习Linux系统最好的方式就是在自己的虚拟机上安装Linux:接下来就给大家简单介绍一下VMware虚拟机的安装以及Linux的安装:VMware虚拟机只是为了更好的学习Linux: ...
- Python进阶点
1. 模块化设计,分而治之 2. 组合数据类型 2.1 集合类型:list.set(无序/不重复),用于数据去重 2.2 序列类型:字符串.元组.列表(有序) 2.3 字典类型:根据字典中 k/v 来 ...
- javascript打印1-100内的质数
<script> /* 质数定义: 质数(prime number)又称素数,有无限个. 质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数. 1不是质数 */ //声明变量 ...
- Servlet (HttpServletResponse)对象
1.setStatus(int status)方法:用于设置HTTP响应消息的状态码,并生成响应状态行.响应状态行中的状态描述信息直接与状态码相关,HTTP版本由服务器确定,因此只需要通过这个方法设置 ...
- 【PAT】B1062 最简分数(20 分)
如果了解分数运算,本题很简单.我有对分数知识进行总结 分数四则运算 #include<stdio.h> #include<algorithm> using namespace ...