2012-02-01 19 views

cevap

10

sadece onlar

+3

Ne yazık ki [Omniscient Debugger tüm çalışma alınamıyor] (http://stackoverflow.com/questions/9686946/how-to-use-omniscient-debugger) Java 6, Jive büyüklüğünün asgari bir emirdir Chronon'dan daha yavaş, Whyline'ın gözetimsiz ve "çok buggy" ve Diver denemedim ama oyuncak gibi görünüyor. Bu nedenle, bu seçeneklerin hiçbirinin Chronon için üretim kalitesinde değiştirmeler olduğunu düşünmüyorum. Yine de, eğitim ve araştırma amaçlı yararlı olabilirler. –

5

Omniscient debugger'lar sonradan sorgulamak için iz verilerini kaydetmek. Bunlar genellikle de arka-in-time, bidirectional- veya zaman yolculuğu-debugger'lar revers- denir, ama canlı bir programda ters fiili izin debugger'lar bu terimleri ayırmak tercih ederim.

TOD, Java için open-source herşeyi bilen bir hata ayıklayıcısıdır.

JIVE Açık kaynak olmasa da, Java için başka bir ücretsiz şeyi bilen ayıklama aracıdır.

GNU ayıklayıcı, gdb. Bu iki mod vardır, biri process record and replay, diğeri reverse debugging. Bir seferde tek bir makine komutunu aldığından çok yavaştır.

Ve Python, genişletilmiş piton ayıklayıcı prototip, epdb için

, aynı zamanda gerçek bir ters ayıklama aracıdır. İşte thesis ve işte program and the code. MSc derecemin bir parçası olarak canlı bir ters hata ayıklayıcı oluşturmak için bir başlangıç ​​noktası olarak epdb'yi kullandım. tez uygulamasının ayrıntılarını kapsar yanı sıra tarihi yaklaşımların çoğu ayıklama tersine çevirmek için. Çevrimiçi olarak kullanılabilir: Combining reverse debugging and live programming towards visual thinking in computer programming.

+0

Sanırım soru JVM için alternatifler soruyor. Yerel uygulamalar veya diğer çalışma zamanları için alternatifler tamamen farklı bir soru olurdu. –

+1

@RobinGreen Sizin yaklaşımınıza katılmıyorum. Sorusu 'Java DVR'lere iki örnek vermesine rağmen, Java ile değil, genel olarak' ters hata ayıklama 'ile etiketlenmiştir. "Benzer özellikler sunan _any_ açık kaynak uygulamaları" nı ister. Bununla birlikte, yalnızca Java'yı ifade etmesi durumunda, cevabımdaki ilk iki öğe, TOD ve JIVE, wrt Java'ya yeterli bir şekilde cevap vermektedir. Daha fazla demek istediğim takdirde, diğer diller için iki tane daha ekledim.Kullanıcının ne anlama gelebileceğini açıklayan kapsamlı bir cevap, bir oylama olmamalı, iyi bir yaklaşımdır, benim düşünceme göre – Abraham

+0

@Abraham Çok teşekkür ederim, geri dönüşümlü bir hata ayıklayıcısı arıyordum. Python çok uzun bir süre, hem epdb hem de tezim bana büyük değerler verecek! – gaborous

İlgili konular