2009-05-26 20 views
8

Burada C kütüphanesinde bir işlevi çağırmak için Java JNI kullanan bir sistemimiz var. Solaris'te çalışan her şey.JNI/C kütüphanesinde nasıl hata ayıklanır?

Ben dize kodlama ile bir yere bir sorun var. C dilinde yazılmış bir işlevle bir arap karakter döndürülür, ancak JNI yöntemleri başka bir kodlamayla birlikte bir dize alır. Ben zaten NLS_LANG ve aynı şekilde kodlama için vm parametresi ayarlamayı denedim, ama hiçbir şey işe yaramadı. Bu yüzden C kodunu ve Java JNI'yi birlikte ayıklayabilmem gerekiyor.

Hata ayıklamanın en iyi yolu nedir?

cevap

3

dbx ayıklayıcı (Güneş Studio parçası) bir JVM işleme ekleme ve size Java kodu ve yerel kod arasındaki tek bir adım sağlayabilirsiniz. İşlev, dbx'in bir parçası olmasına rağmen, kod adı "jdbx" ile gider. Ağır bir şekilde teşvik edilmedi, bu yüzden hatalar olabilir. IDE'nin hem Java'yı ele alan iki hata ayıklama motoru olduğu zamanlar vardı, ancak dbx komut satırını kullanmak bu sorunları ortadan kaldırıyordu.

Tabii ki, muhtemelen ille Java ve C kodu karıştırabilirsiniz kaynak seviyesi hata ayıklama kullanmadan belirli problemi ayıklamaya daha geleneksel pek çok yöntem vardır. son Android Eklentileri

0

ADT Bundle artık doğrudan bu destekler. Tıkla Hata Ayıklama As -> Android Native Application dışında bir şey yapmanıza gerek olan herhangi bir kod, 05/12/2013 tarihinden itibaren güncel değildir ve eski bir geliştirme sistemi kullanmadığınız sürece baş ağrınıza neden olacaktır. Bu durumda, en son ADT paketini indirin ve yükleyin, çünkü çok fazla sorun çıkarır.

İlgili konular