Ana içeriğe atla

Java'da dosyaları çift tıklayarak çalıştırma

Merhaba arkadaşlar. Hepimiz biliyoruz ki, Java ile yazdığımız bir program.java dosyası, derlendikten sonra program.class dosyası oluşuyor. Evet gayet güzel. Peki bu programı dağıtmak istediğimizi düşünelim. Bizim programımızı bir başka kullanıcı nasıl çalıştıracak? Herkes bizim gibi bir programcı değil. Diyelim ki sadece çift tıkla programı çalıştırmak isteyen birine program yazıyoruz. Bu durumda ne yapmak lazım? İşte bugün ki yazıda bu konuyu ele alacağız. Ama, tabi ki klasik yöntemler kullanarak :)

Çünkü, Java ile yazılan programı exe'ye dönüştürme işlemleri var ancak, bu durumda tam verim alınamıyor ya da kodun her yerde çalışabilirliği yok oluyor. O zaman biz ne yapacağız?
Tabi ki programımızı jar halinde dağıtacağız. Jar dosyası nedir peki? Jar dosyası, yazdığımız programın içerdiği classları bir düzen içerisinde barındıran sıkıştırılmış bir Java arşiv dosyasıdır. Ben NetBeans kullandığım için, yazdığımız bir programı nasıl jar dosyası haline getireceğimizi bunun üzerinden anlatmaya çalışacağım.

Şimdi ilk olarak projemizi açalım. Burda, resimdeki gibi Run/Clean and Build Project seçiyoruz ve projemizin jar haline getirilmesini bekliyoruz.



Eğer bir hata olmazsa Jar dosyamız oluşturulur ve, proje klasörlerinden dist içerisine eklenir. Buraya gidip Proje_adi.jar dosyasına çift tıklarsak programımız çalışacaktır :)













Ancak, eğer programımız grafik arayüz içermiyorsa, yani konsol üzerinde çalışıyorsa, bunun için şöyle bir çözüm bulabiliriz. Jar dosyasının yanına bir .bat dosyası oluştururuz. .bat dosyası nedir diye sorarsanız, komutları toplu olarak çalıştırmaya imkan veren bir dosyadır. Yani, bir bütün içinde çalıştırmak istediğiniz komutlar varsa(cmd), bunları .bat içerisine yazarız ve çift tıklayarak tek seferde çalıştırırız. İşte biz de bat dosyasının bu özelliğinden faydalanacağız. İlk olarak jar dosyasının yanına start.txt adlı bir dosya oluşturalım ve uzantısını bat yapalım.







Yani son hali start.bat olmalı. Şimdi sağ tık/düzenle diyerek içine şunları yazalım ve kaydedelim.


@echo off komutu, sizin programımız dışındaki çıktıların görünmesini engellemek için kullandık. color b ile biraz renk verdik :) cls ile ekranı temizledik ve son satırdaki komut ile jar dosyasını çalıştırdık. Artık oluşturduğumuz bu bat dosyasına çift tıklarsak, programımız çalışacaktır. Bu kadar basit. Linux için de sh dosyası oluşturabiliriz. Ancak onu anlatmak istemiyorum. Zaten Linux kullanan kendi başının çaresine bakabilir... Sorularınız varsa sorabilirsiniz. Görüşmek üzere...

Yorumlar

  1. Merhaba, gösterdiğiniz şekilde yaptım lakin benim projemde dışardarın veri girme işlemi var ve bat dosyası verileri dışardan aldıktan sonra hemen kapanıyor . Yardımcı olur musunuz ?

    YanıtlaSil
    Yanıtlar
    1. Merhaba. Hemen kapanmasını istemiyorsanız batch dosyasının sonuna "pause" komutunu yazın.

      Sil
  2. Çok teşekkür ederim. Gayet bilgilendirici bir makale olmuş, elleriniz dert görmesin.

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

Python Soket Programlama

Merhaba arkadaşlar. Bugün sizlerle birlikte Python'da socket programlama yapacağız. Bunun için Python da socket kütüphanesini kullanacağız. Peki nedir bu socket programlama? Soket programlama, sizin iki program arası yada iki bilgisayar arası iletişim kurmanızı sağlar. İşte bizde bugün iki programımızı birbiri ile haberleştireceğiz. Bunun için elimizde iki program olacak. Birinci program,mesaj bekleyen program olacak, diğeri ise mesaj gönderen program.

Infix to postfix dönüşümü

Infix to postfix dönüşümü, operatorün ortada olduğu a+b yazım şeklini operatorün sonda olduğu ab+ yazım şekline dönüştürme işlemidir.  Infix gösterimi, bizler için kolay bir gösterim olsa da makineler için öyle değildir. İfadeyi soldan sağa doğru okurken a + b * c işleminde önce b ile c yi çarpıp sonra da a ile toplamayı kolay bir şekilde yapabiliriz çünkü bizim ifadeyi sıra ile soldan sağa adım adım giderek okuma zorunluluğumuz yok. Önce b*c nin öncelikle olduğunu görerek oradan başlar, sonra a ile kolayca toplarız.

Python Subprocess

subprocess modülü, yeni bir process oluşturmayı sağlayan, bunların girdi-çıktılarını ele alma imkânı veren ve dönüş kodlarını almayı sağlayan bir modüldür. Yani daha basit bir şekilde, program içinde program çalıştırmaya imkan veren bir modüldür. Subprocess Modülünün Kullanımı subprocess basit bazı process'leri kullanmak için birkaç tane fonksiyon sunuyor. Daha karmaşık bir process çalıştırmak isterseniz, Popen sınıfını kullanabilirsiniz. Bunlara detaylı bir şekilde değinmeye çalışacağız. Şimdi basit fonksiyonları inceleyelim