ArrayList. line: not available

 

之前调试java源码时,发现无法定位到源码,如图1.1和图1.2

ArrayList. line: not available_第1张图片

                                         图1.1     

       ArrayList. line: not available_第2张图片

                                                                                                                     

                                                                    图1.2

但仔细核查一遍后,确实都已关联源码,如图2,但调试仍断不上

  ArrayList. line: not available_第3张图片

       

                                          图2

         

        不断折腾发现,更换成jdk安装目录下的jre问题就解决了,如图3.1,而不是安装jdk时那个安装专用的jre,如图3.2和3.3

ArrayList. line: not available_第4张图片

        

                                            图3.1

   ArrayList. line: not available_第5张图片

                   

                                                                       图3.2

                  ArrayList. line: not available_第6张图片

                       

                                                                     图3.3

             更换JRE效果如图4

            ArrayList. line: not available_第7张图片         

                                         图4

          重新调试就可正确断到断点处了,如图5.1和图5.2

        ArrayList. line: not available_第8张图片

                                          图5.1

ArrayList. line: not available_第9张图片

        

                                        图5.2


            虽然问题解决了,但仍有不少疑问?

            1、在eclipse上都关联了源码,为啥选jdk下的jre可以关联上,而专用的jre不行?

                 这个与eclipse具体的插件实现有关,比如在该插件实现中需要jdk bin目录一下的一个命令,而运行期环境jre没有(仅仅是个人猜想),具体原因未知

            2、eclipse中jvm启动加载jre的顺序

                 http://blog.csdn.net/teedry/article/details/6666850

            3、eclipse只需要jre环境即可打开,jre下又无javac.exe,那eclipse是如何编译java源代码的呢?

                 这个是由eclipse的一个核心组建JDT来负责编译的,JDT为Java Development Tool

 
  

         



     

        

你可能感兴趣的:(编程工具)