Bir .jar dosyasını terminalden nasıl çalıştırabilirim

Bir dosyayı çalıştırmak için . komutunu ve ardından aralarında bir boşluk bırakarak dosya adını kullandığımı biliyorum. Ama ben . kullanarak bir .jar dosyasını çalıştırmaya çalışıyorum ve çalışmıyor. Özelliklere girdim ve çalıştırılabilir olarak işaretledim ve Java ile çalıştırdım.

Java ile bir dosyayı Bash Terminalinde çalıştırmanın bir yolu var mı?

Minecraft.jar dosyasını çalıştırmaya çalışıyorum.

Çözüm

.` sözdizimi yalnızca kabuk komut dosyalarını çalıştırmak için kullanılabilir ("sourcing" ile).

Bir .jar dosyasını çalıştırmak için java komutunu kullanmanız gerekir:

java -jar Minecraft.jar

Eğer java yüklü değilse, default-jre¹ paketini yükleyerek bunu düzeltebilirsiniz. Bir terminalde çalıştırarak java'nın zaten yüklü olup olmadığını görebilirsiniz:

java -version 

[1]: Bu, varsayılan openjdk Java çalışma zamanını yükleyecektir. Bunun yerine openjdk-8-jre veya openjdk-7-jre veya openjdk-6-jre kullanabilirsiniz, eğer tercih ederseniz - Ubuntu sürümünüzde hangisi mevcutsa.

Yorumlar (1)

Linux, JAR dosyası gibi yabancı bir ikili dosyayı mükemmel bir şekilde çalıştırabilir. Örneğin Wine bu şekilde çalışır. JAR dosyalarını çalıştırılabilir olarak çalıştırmak için konsolda aşağıdakileri yapın

sudo apt-get install binfmt-support

Cd'yi JAR dosyanıza ekleyin ve çalıştırılabilir olarak değiştirin (bunu Nautilus'taki dosya özellikleri aracılığıyla da yapabilirsiniz)

chmod a+rx myjar.jar

Jar dosyanızı herhangi bir ikili yürütülebilir dosya veya kabuk betiği gibi çalıştırın

./myjar.jar

Not: binfmt_misc linux çekirdek modülünün yüklü olduğundan emin olun. Bu modül olmadan özel derlenmiş çekirdeğinizi kullanırsanız, binfmt desteği çalışmayacaktır.

Yorumlar (2)

Eğer çalıştırılabilir bir kavanoz ise, o zaman

java -jar Minecraft.jar 

Tüm jar-Arşivleri Manifest dosyasında başlatılacağı bildirilen bir çalıştırılabilir sınıf içermez, ancak varsa, bu işe yarayacaktır.

Btw.: Çoğu programı kabuktan nokta ile başlatmazsınız. Nokta source için bir kısayoldur ve sadece bash ve diğer bazı kabuklarda, bir betiği mevcut oturumun kapsamına dahil etmek için çalışır.

Derlenmiş bir ikili xybin, yol içindeyse basitçe adıyla başlatılır:

xybin 

veya mutlak yolu ile:

/home/foo/proj/test/xybin

veya göreli yolu ile:

proj/test/xybin

ya da dosyanın bulunduğu dizindeyseniz, bu göreli yol ile:

./xybin

Dosya sizin için çalıştırılabilir olarak işaretlenmelidir (bkz: chmod). Yukarıdakilerin hepsi kabuk betikleri için de geçerlidir, ancak genellikle .sh uzantısına sahiptirler ve bir kabuk betiğini yorumlayıcıyı çağırarak başlatabilirsiniz ve bu durumda çalıştırılabilir olarak işaretlenmesi gerekmez:

 bash xy.sh

Yeni bir bash başlatmak istemiyorsanız, işlev tanımlarını, takma adları ve değişken ayarlarını tüketmek için source kullanabilirsiniz ve bunu yaparsınız.

Yorumlar (0)