博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】如何用Eclispe调试java -jar xxx.jar 方式执行的jar包
阅读量:4966 次
发布时间:2019-06-12

本文共 1562 字,大约阅读时间需要 5 分钟。

原文地址:https://www.cnblogs.com/zzpbuaa/p/5443269.html

有时候,我们经常会需要调试 java -jar xxx.jar方式运行的代码,而不是必须在Eclipse中用Debug或者Run的方式运行。比如我们拿到的SourceCode不完整。Java提供了一种调试的机制。

1. 我们可以使用命令:
java -agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y -jar xxx.jar
来打开调试。运行后,它会在8050端口监听调试器的Attach的信号。
2. 然后,我们在Eclipse中添加一个调试。打开Debug-Debug Configuration-Remote Java Application. 然后New 一个新的。添加上端口。
然后点击Debug开始即可。它就会命中你所打的断点了。
 
注意这里填写的端口要跟前面命令里面设置的端口一样。另外,注意看一下Connect旁边的Source标签。里面可以设置在哪个目录查找源文件。也就是说,你甚至可以在没有源文件的情况下用单步跳转的方式跳进某个类去,然后再选择源文件。在android的调试中,这是比较常见的情况。
 
再看一下之前那个命令的解释。运行 Java 命令,会看到如下的解释:
 
 
-agentlib:<libname>[=<选项>]
加载本机代理库 <libname>, 例如 -agentlib:hprof
另请参阅 -agentlib:jdwp=help 和 -agentlib:hprof=help
 
再运行java -agentlib:jdwp=help. 可以查看JDWP支持的所有选项,不过这里并不知道 transport除了 dt_socket以外还有什么选项。
 
Java Debugger JDWP Agent Library
--------------------------------
(see http://java.sun.com/products/jpda for more information)
jdwp usage: java -agentlib:jdwp=[help]|[<option>=<value>, ...]
Option Name and Value Description Default
--------------------- ----------- -------
suspend=y|n wait on startup? y
transport=<name> transport spec none
address=<listen/attach address> transport spec ""
server=y|n listen for debugger? n
launch=<command line> run debugger on event none
onthrow=<exception name> debug on throw none
onuncaught=y|n debug on any uncaught? n
timeout=<timeout value> for listen/attach in milliseconds n
mutf8=y|n output modified utf-8 n
quiet=y|n
 
运行 java -agentlib:hprof=help, 内容比较多就不贴了。是一个CPU和内存的分析工具。

转载于:https://www.cnblogs.com/toSeeMyDream/p/10400411.html

你可能感兴趣的文章
奇异矩阵(转载)
查看>>
打飞机
查看>>
MVC3.0 中Razor 学习
查看>>
<转> mysql处理高并发,防止库存超卖
查看>>
[18/11/29] 继承(extends)和方法的重写(override,不是重载)
查看>>
Numpy基础操作笔记
查看>>
How can I add a new user as sudoer using the command line?
查看>>
UI的设计,适配器,以及RecyclerView无法加载的解决办法
查看>>
SpringBoot集成netty实现客户端服务端交互和做一个简单的IM
查看>>
Math.ceil()、Math.floor()和Math.round()
查看>>
328. Odd Even Linked List
查看>>
使用WebSocket帮助应用程序群集节点间通信
查看>>
基于Docker搭建MySQL主从复制
查看>>
MacOS安装IDA牛逼插件keypatch
查看>>
在Mac上搭建服务器
查看>>
微信分享 使用weixin js sdk 兼容 旧版本 分类: 微信分享 ...
查看>>
Data Structure Array: Find the minimum distance between two numbers
查看>>
2499 不降的数字
查看>>
刷过一题之NOIP201505神奇的幻方
查看>>
用类做封装
查看>>