BTrace 是一款java诊断工具,在解决现场问题的时候非常有用。

今天使用的时候碰到几个坑,先记录一下.

下载下来以后直接运行报错

  1. root@iZ2ze89756yjbvq7le6obdZ:~/btrace-bin-1.3.11/bin# ./btrace 6582 /root/testBtrace.java
  2. Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/source/util/TaskListener
  3. at com.sun.btrace.client.Client.compile(Client.java:181)
  4. at com.sun.btrace.client.Client.compile(Client.java:164)
  5. at com.sun.btrace.client.Main.main(Main.java:189)
  6. Caused by: java.lang.ClassNotFoundException: com.sun.source.util.TaskListener
  7. at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
  8. at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
  9. at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
  10. at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
  11. ... 3 more

百度半天才发现是因为没有配置JAVA_HOME 环境变量导致的.

第二个错

  1. root@iZ2ze89756yjbvq7le6obdZ:~# btrace-bin-1.3.11/bin/btrace 6582 HelloWorld.java
  2. Port 2020 unavailable.

端口被占用,修改端口即可.

  1. btrace-bin-1.3.11/bin/btrace -p 2022 15516 HelloWorld.java

第三个错

  1. root@iZ2ze89756yjbvq7le6obdZ:~# btrace-bin-1.3.11/bin/btrace -p 2021 6582 HelloWorld.java btrace WARNING: Invalid 'libs' configuration [null]. Path '/root/btrace-bin-1.3.11/build/btrace-libs' does not exist.

默认下载下来的btrace文件夹中没有btrace-lib,在btrace-bin-1.3.11/build下新建一个即可,把btrace-bin-1.3.11/build下的jar包也拷过去就好了.

最后的成果:

  1. root@iZ2ze89756yjbvq7le6obdZ:~# btrace-bin-1.3.11/bin/btrace -p 2022 15946 HelloWorld.java
  2. search start!
  3. search start!

BTrace 初探的更多相关文章

  1. 初探领域驱动设计(2)Repository在DDD中的应用

    概述 上一篇我们算是粗略的介绍了一下DDD,我们提到了实体.值类型和领域服务,也稍微讲到了DDD中的分层结构.但这只能算是一个很简单的介绍,并且我们在上篇的末尾还留下了一些问题,其中大家讨论比较多的, ...

  2. CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探

    CSharpGL(8)使用3D纹理渲染体数据 (Volume Rendering) 初探 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码 ...

  3. 从273二手车的M站点初探js模块化编程

    前言 这几天在看273M站点时被他们的页面交互方式所吸引,他们的首页是采用三次加载+分页的方式.也就说分为大分页和小分页两种交互.大分页就是通过分页按钮来操作,小分页是通过下拉(向下滑动)时异步加载数 ...

  4. JavaScript学习(一) —— 环境搭建与JavaScript初探

    1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...

  5. .NET文件并发与RabbitMQ(初探RabbitMQ)

    本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...

  6. React Native初探

    前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...

  7. java性能调优及问题追踪--Btrace的使用

    在生产环境中经常遇到格式各样的问题,如OOM或者莫名其妙的进程死掉.一般情况下是通过修改程序,添加打印日志:然后重新发布程序来完成.然而,这不仅麻烦,而且带来很多不可控的因素.有没有一种方式,在不修改 ...

  8. 【手把手教你全文检索】Apache Lucene初探

    PS: 苦学一周全文检索,由原来的搜索小白,到初次涉猎,感觉每门技术都博大精深,其中精髓亦是不可一日而语.那小博猪就简单介绍一下这一周的学习历程,仅供各位程序猿们参考,这其中不涉及任何私密话题,因此也 ...

  9. btrace使用

    btrace使用 目录btracee是btrace的解压目录 btrace/btrace是btrace的项目工程 root@ubuntu:/usr/local/bogon/btrace# tree b ...

随机推荐

  1. python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie)

    python利用Trie(前缀树)实现搜索引擎中关键字输入提示(学习Hash Trie和Double-array Trie) 主要包括两部分内容:(1)利用python中的dict实现Trie:(2) ...

  2. web工程设计<mysql数据模型-数据类型的优化>

    Schema与数据类型优化 良好的逻辑设计和物理设计是高性能的基石,应该根据系统将要执行的查询语句来设计schema,这往往需要权衡各种因素. 一:选择优化的数据类型 ①:更小的通常更好 整数类型:M ...

  3. [20180122]列统计与直方图.txt

    [20180122]列统计与直方图.txt --//昨天看了https://jonathanlewis.wordpress.com/2018/01/18/column-stats/,提到分析metho ...

  4. 洗礼灵魂,修炼python(43)--巩固篇—经典类/新式类

    经典类 1.什么是经典类 就是在使用class关键词时,括号内不添加object类的就叫经典类,前面的博文里是绝对解析过的,所以你应该知道,经典类现在已经仅存在于python2了,因为python3不 ...

  5. 洗礼灵魂,修炼python(39)--面向对象编程(9)—魔法方法表

    好的,不多说,大招来了,几乎完整的魔法方法: 基本的魔法方法 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Defi ...

  6. python第十八天

    学习内容: json 模块,pickle模块,shelve模块,xml模块 json 模块  序列化: import json,pickle info={ 'name':'a', 'age':34, ...

  7. python第十五天-原来还差一份作业

    作业 1: 员工信息表程序,实现增删改查操作 可进行模糊查询,语法至少支持下面3种: select name,age from staff_table where age > 22 select ...

  8. Pyhon环境变量的一些坑

    在正常的情况下,使用编译器执行Python文件,无需考虑环境变量的改变 例:sum --one --one1.py --two --two1.py 在执行one.py文件需要调用 two.py中某个方 ...

  9. 使用Python语言理解递归

    递归 一个函数在执行过程中一次或多次调用其本身便是递归,就像是俄罗斯套娃一样,一个娃娃里包含另一个娃娃. 递归其实是程序设计语言学习过程中很快就会接触到的东西,但有关递归的理解可能还会有一些遗漏,下面 ...

  10. Nginx安装成Windows服务

    因为有项目使用Nginx来做负载均衡,但是Nginx的Windows版本是不提供安装成服务的,所以服务器重启后Nginx并不会伴随启动和恢复.网上查了下,这里记录下解决方法,防止遗忘. 第一步:下载W ...