java 怎么调试到第三方库的内部,在有源码的情况下

Wesley13
• 阅读 710

第一步, 把第三方库加到workspace :   https://stackoverflow.com/questions/370814/how-to-set-a-breakpoint-in-eclipse-in-a-third-party-library

   The most sure-fire way to do this (and end up with something that's actually useful) is to download the source (you say that it is open-source), and set up another "Java Project" pointing at that source.

To do that, get the source downloaded and unzipped somewhere on your system. Click "File"->"New"->"Java Project". In the next dialog, give it a project name and select "Create Project from Existing Source". Browse to the root location of the open source library.

Supposing that all the additional libraries that are required by the project and such are included in the project you downloaded, Eclipse will figure everything out and set the build path up for you.

You'll need to remove the open source jar from your project's build path, and add this new project to the build path of your project.

Now, you can just treat this as your code, and debug at will.

第二步 , include 新添加的项目 

  1. Right Click > Project.
  2. Click Project Properties.
  3. Click Java Build Path.
  4. Click the Projects Tab.
  5. Click the Add Button.
  6. Select the Project.
  7. Click OK.

第三步 : 这时调试, 如果断点在 第三方库 内部, 会发生 "Source not found" 错误, 

    所以 , 需要在  debug configuration ---> Source ---> Source Lookup Path 

    add 第三方工程 。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
腾讯安卓面试,完美讲解内存缓存LruCache实现原理
开头在Android开发当中,相信大家对第三方库的重要性是无需多说的,尤其是三方库源码更是重中之重,而EventBus源码就属于其中的一个重点。EventBus是安卓(Java中也可以用)开发中非常流行的一个第三方库,是一种发布/订阅事件的总线.想必每个入了门的Android开发者都多少对EventBus有过了解,EventBus是一个Android事件发布
Stella981 Stella981
3年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Stella981 Stella981
3年前
055 Python第三方库安装
\TOC\一、概述看见更大的Python世界第三方库的pip安装方法第三方库的集成安装方法第三方库的文件安装方法二、看见更大的Python世界2.1Python社区\13万个第三方库:<atarget'\_blank'h
可莉 可莉
3年前
055 Python第三方库安装
\TOC\一、概述看见更大的Python世界第三方库的pip安装方法第三方库的集成安装方法第三方库的文件安装方法二、看见更大的Python世界2.1Python社区\13万个第三方库:<atarget'\_blank'h
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Android实战技巧之十二:Android Studio导入第三方类库、jar包和so库
第三方类库源码将一网友的XMPP代码从ADT转到AS时,发现其使用了第三方类库,源码放在了lib下,直接在AS中Importproject,第三方类库并没有自动导入进来,看来需要自己动手了。项目的目录结构如下:XMPP$lsappbuild.gradlegradlewimportsu
融云IM即时通讯 融云IM即时通讯
10个月前
如何解决使用融云音视频时由于库冲突导致编译不通过的问题
音视频库里面使用了一些第三方库,比如openssl,libopencoreamrnb等第三方库,如果集成的过程中遇到冲突可以尝试这样修改:1、在BuildSettings中OtherLinkerFlags中把allload去掉;2、如果遇到openssl库
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这