How do I tell visualvm where to find my source code?

前端 未结 2 674
陌清茗
陌清茗 2020-12-15 18:51

I\'m running VisualVM to profile a simple Java application. When I double-click on a method in the profiling pane (hoping to get more details on it), then it says \"No sourc

相关标签:
2条回答
  • 2020-12-15 19:31

    I took a stack dump of the VisualVM process while it was displaying that error dialog, and it seems that the problem lies in the class org.netbeans.modules.profiler.api.GoToSource, in the method openSourceImpl.

    This method tries to load the source using any registered implementations of the GoToSourceProvider service provider interface, and displays the error message if none of them manage to display the source code in question.

    My guess is that the current, default version of VisualVM doesn't have any GoToSourceProviders registered, and therefore will always fail to look-up source code.

    From the package name it appears that GoToSourceProvider is an SPI for the profiler module, but I wasn't able to find any documentation on how to implement this SPI, and it doesn't seem to be part of the VisualVM extension points.

    0 讨论(0)
  • 2020-12-15 19:32

    Hello something virtually same like VisualVM is implemented in NetBeans IDE (I'm using 8.0.2). You just click Profile->Project Profile. Showing you source code upon clicking is working there. But unfortunately there is no more detailed info which lines of code takes most time.

    For that I will modify code and I will count manually using

    long beg = System.nanoTime() 
    lineISuspect
    sum += System.nanoTime() - beg;
    
    0 讨论(0)
提交回复
热议问题