java – Eclipse调试器“跳过”跳过重要的代码

前端之家收集整理的这篇文章主要介绍了java – Eclipse调试器“跳过”跳过重要的代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个奇怪的问题调试 Android应用程序.
为了准确,我在这里复制我正在运行的确切代码
// Get the puzzles from cache
List<PuzzleDetails> newPuzzles = m_cachedPuzzles.getPuzzles(count);

if(newPuzzles.size() > 0){
    // Remove from cache
    m_cachedPuzzles.removePuzzles(newPuzzles);  // LINE (A)     

    // Add the new puzzles from cache immediately
    m_ownedPuzzles.addPuzzles(newPuzzles);

    Log.d("requests","" + newPuzzles.size() + " moved from cache to user");
}

int left = count - newPuzzles.size();       
String deviceId = ResourcesPublisher.getInstance().getDeviceId();

// Don't let anyone else use these points for now
ChallengePointsManagerImpl.getInstance().usePoints(left);       

Log.d("requests","aquirePuzzles(" + left + ")");

// Get a list of requests for 'left' number of puzzles
RequestList reqList = getRequestList(left);

// TODO this is a bug,now
if(reqList.size() > 1){
    reqList = getRequestList(left);  // LINE (B)
}

当我运行这段代码后,踩到线路(A)
m_cachedPuzzles.removePuzzles(newPuzzles);
调试器“跳转”到最后一行(B)
reqList = getRequestList(左);

一个简单的检查表明它确实跳过了这些代码行之间的所有代码.
例如,Log.d(…)从未被调用或写入.

谁能给我一个线索为什么会发生???

谢谢!

解决方法

尝试右键单击>在编译代码之后和开始调试之前刷新项目资源管理器上显示的项目.

猜你在找的Java相关文章