javaweb线上问题排查(若依定时任务)
常用的方法
- jdk自带的jps
- Arthas 工具
- 这两种方法都依赖于jdk和javac
java -version
javac -version
- 如果上述两个都能查到版本,则环境条件准备完毕
- 如果第一个语句获取不到版本,jdk安装失败,重新安装
- 如果没有javac,则到jdk的bin目录下看一下,估计没有和这个文件,那就是没有安装javac
- 其实你是安装了javac的,因为这是jdk自带的
- 但是jdk的安装其实是分两步的,第一步是安装jdk,第二步是安装jre
如果jre的安装目录和jdk的安装目录是一样的,俺么jdk中javac就会被删除掉
- 所以在选择jre的安装目录的时候,一定要保
证两者路径不一致
没有安装javac的,有两种方法解决:
- 第一种:清除环境变量,删除jdk文件,重新安装,卸载再重装
- 第二种:安装另外一个版本的jdk,切换环境变量中的JAVA_HOME即可,多版本jdk
如果是在开发环境,基本没有问题,但是生产环境可能出现问题
使用jstack能够正常访问,但是jps无法访问
- 解決方案:https://blog.csdn.net/WX10301075WX/article/details/125757511
- 主要原因:沒有对应文件的写入权限,放开权限
- 使用服务启动,不是用start启动
使用jps能够看到,但是用工具Arthas 看不到对应的进程id
权限不够,不要使用cmd,直接运行命令
- 使用管理员权限,运行命令
java -jar arthas-boot.jar
参考链接