|
İlk olarak eclipse ide mi açıyorum Eclipse Açık kaynak kodlu bir ide olup internetten indirebilirsiniz.
default package da Deneme isimli bir sınıf oluşturuyorum
Ekran Görüntüsü için tıklayın
public class Deneme {
public String denemeMethod(){
return "Ozgur www.sondefterim.com IKVM Denemesidir";
}
}
public class Deneme { public String denemeMethod(){ return "Ozgur www.sondefterim.com IKVM Denemesidir"; } }
Projenin üstüne sağ tıklayıp export dedim ve jar file olarak projemi dişarı export ettim şimdi java byte kodumuzu .net içinde kullanmaya geldi sıra IKVM Projesini
http://www.ikvm.net/devguide/net2java.html
Ben bu yazıyı yazarken çoktan bilgisayarıma inmiş açıkçası heyecan verici bakaılm ne olacak :))
Dizinimi açtığımda ilk dikkatımı çeken şey 32 bit ve 64 bit uygulamalar için iki ayrı dizin oldu jar dosyamızı .net dll ine derlesek bile uygulamamızın koşacağı bilgisayara göre IKVM nin verdiği bu dll lerden birin pojemize reference etmemiz gerekmekte
Şu Linkteki ikvm ile ilgili yazılar gerçekten dikkate değer
Java ile .NET Uygulamarı geliştirin gibi başlıklar var. Sanırım javacıların ocağına incir ağacı dikmek için hazırlanmış bir proje :)))
Visual studio 2008 ı açıp bir windows forms projesi başlatıyorum amacım java byte kodunun içindeki methodu .net uygulamam içinden çağrımak ve textbox a bunu yazdırmak...
İlk olarak yapmam gerek şey jar olarak export ettiğim java kodumu .net cil koduna derlemek cil nedir diyenler için bknz google
javatoNET.jar export edilmiş dosyamın adıdır.
ben IKVM yi masaüstüne indirdim
C:\Documents and Settings\User\Desktop\ikvm-0.42.0.6\bin
Şekilde ikvm min binin bulunduğu dizin
şimdi Çalıştır cmd yazalım
->cd C:\Documents and Settings\User\Desktop\ikvm-0.42.0.6\bin
yazıp ikvm nin bulunduğu dizine girdim.
ikvmc javatoNET.jar dediğimde proje .net exesine derlenmişti ama bana dll lazımdı
dll e derlemek için(
http://sourceforge.net/apps/mediawiki/ikvm/index.php?title=Ikvmc
yukarıdaki linkte console dan göndereceğiniz parametreler var)
şöyle yapmak gerekiyormuş. ->ikvmc -target:library "YOL"
C:\Documents and Settings\User\Desktop\ikvm-0.42.0.6\bin dizinimin içinde artık javanın byte kodundan .nete derlenmiş dllım durmakta
vs 2008 c# windows forms projeme bir adet textbox ve bir adet buton koydum
solution explorer penceremden gelip add refernce dedim .net olarak derlediğim java dll sini projeme ekleyeceğim.
add reference browse dedikten sonra projeme .net olarak derlediğim dll i ekledim. javatoNET.dll si ikvm nin bin dizinin altında idi.
dilerseniz object browserdan dll nın içeriğine bakabilirsiniz.
IKVM.OpenJDK.Core u da dahil etmem gerektiği konusunda b
ir hata mesajı aldım onuda dahil ettim add refernce olarak
ve artık hazırız buton ve textboxum formun üstündeler butonun üstüne tıklayarak onclick event ına şu kodu yazıyoum
Bilindiği üzere java sınıfımın ismi deneme idi
private void button1_Click(object sender, EventArgs e)
{
Deneme javadannesne = new Deneme();
textBox1.Text = javadannesne.denemeMethod();
}
ve efenim mutlu sonumuzun ekran görüntüsü :D
ekran görüntüsü
Özgür DEMİREL
Pek Kullanacağımı düşünmesemde gerçekten ilginç bir konu umarım faydalı bir iş yapmışımdır bu konuda pek türkçe kaynak bulmak mümkün değildi.Bir mum yakmış oldum en azından .......
Kategori
: C#.Net
Etiketler : IKVM Nedir ,
Tarih : 16.05.2010
Ekleyen : ozgur
|