“Error: Unable to access jarfile” hatası, Java’nın çalıştırmasını istediğiniz jar dosyasını açamadığını söyler. Bu bir Minecraft hatası değildir; Java sunucu kodunu okumaya bile başlamamıştır. Hata düştüğü anda konsol penceresi genelde anında kapanır ve kullanıcı ne olduğunu göremez. Nedeni neredeyse her zaman üç şeyden biridir: dosya adı komuttakiyle birebir aynı değildir, komut yanlış klasörde çalışmaktadır ya da dosyanın okuma izni yoktur.
Bu sayfada hatanın tam metnini, Windows ve Linux tarafındaki tipik tuzakları, doğru başlatma betiği yapısını ve kalıcı çözüm için dosya düzeni önerilerini bulacaksınız.
Hatanın Birebir Metni#
Error: Unable to access jarfile server.jar
Error: Unable to access jarfile paper.jar
Error: Unable to access jarfile C:\minecraft\server\paper-26.2-112.jar
Linux tarafında ek olarak izin hatası da görülebilir:
Error: Unable to access jarfile /opt/minecraft/paper.jar
-bash: ./start.sh: Permission denied
Neden Olur? Belirti, Neden ve Çözüm Tablosu#
| Belirti | Olası neden | Çözüm |
|---|---|---|
| Dosya klasörde görünüyor ama bulunamıyor | Windows uzantıyı gizliyor; gerçek ad server.jar.txt | Uzantıları görünür yapın, adı düzeltin |
| Betik çift tıklanınca hata, komut satırından çalışıyor | Çalışma dizini farklı | Betiğe cd /d "%~dp0" ekleyin |
| Yol boşluk içeriyor | Tırnak kullanılmamış | Yolu çift tırnak içine alın |
Permission denied | Dosya sahibi veya izinler yanlış | chown ve chmod ile düzeltin |
| Jar bir anda kayboldu | Antivirüs karantinaya aldı | Klasörü tarama dışı bırakın, jar’ı yeniden indirin |
| Güncellemeden sonra başladı | Yeni jar farklı isimde indi | Yeni jar’ı paper.jar olarak adlandırın |
| İndirme yarım kalmış, dosya 0 byte | Bozuk indirme | Dosya boyutunu kontrol edin, yeniden indirin |
Adım Adım Çözüm#
-
Gerçek dosya adını görün#
Windows’ta Dosya Gezgini’nde Görünüm sekmesinden “Dosya adı uzantıları” kutusunu işaretleyin. Ardından klasör içeriğini komut satırından listeleyin:
Get-ChildItem C:\minecraft\server -Filter *.jar | Select-Object Name,Length,LastWriteTimeLinux tarafında:
ls -lh /opt/minecraft/*.jar file /opt/minecraft/paper.jarfilekomutunun çıktısı “Java archive data (JAR)” demiyorsa dosya bozuk ya da aslında bir jar değildir. -
Dosya boyutunu doğrulayın#
Bir Paper sunucu jar’ı onlarca megabayttır. Boyut sıfır ya da birkaç kilobayt görünüyorsa indirme yarım kalmıştır. Böyle bir dosyayı silip yeniden indirin.
-
Betiği doğru yazın#
Windows tarafında
start.batdosyasının ilk satırı çalışma dizinini betiğin bulunduğu klasöre sabitlemelidir:@echo off cd /d "%~dp0" title Minecraft Sunucusu java -Xms10G -Xmx10G -XX:+UseG1GC -XX:+ParallelRefProcEnabled ^ -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions ^ -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -jar paper.jar nogui echo. echo Sunucu kapandi. Kapatmak icin bir tusa basin. pauseLinux tarafında
start.sh:#!/bin/bash cd "$(dirname "$0")" || exit 1 java -Xms10G -Xmx10G \ -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \ -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \ -jar paper.jar noguiBetiğe çalıştırma izni verin:
chmod +x /opt/minecraft/start.sh ./start.shBetik yazımının ayrıntıları start.bat oluşturma sayfasında anlatıldı.
-
İzinleri ve sahipliği düzeltin#
Linux’ta sunucuyu ayrı bir kullanıcıyla çalıştırmak doğru yaklaşımdır, ancak dosya sahipliği o kullanıcıda olmalıdır:
sudo chown -R minecraft:minecraft /opt/minecraft sudo chmod 750 /opt/minecraft sudo chmod 640 /opt/minecraft/paper.jar sudo -u minecraft ls -l /opt/minecraft/paper.jarSon komut, sunucu kullanıcısının dosyayı gerçekten okuyabildiğini doğrular. Kullanıcı oluşturma ve dizin düzeni için Linux sunucu kurulumu rehberine bakın.
-
Komutu elle test edin#
Betiği bir kenara bırakıp komutu doğrudan çalıştırın. Böylece hatanın betikten mi yoksa dosyadan mı geldiğini ayırırsınız:
cd C:\minecraft\server java -jar paper.jar noguicd /opt/minecraft java -jar paper.jar noguiBu komut çalışıyorsa sorun betiğin çalışma dizinindedir. Bu komut da hata veriyorsa dosya adı veya izin sorunu devam ediyordur.
Windows’a Özgü Tuzaklar#
Gizli uzantı sorunu#
Windows varsayılan olarak bilinen dosya uzantılarını gizler. Bir jar dosyasını sağ tıklayıp “Yeniden adlandır” dediğinizde yalnızca paper kısmını görürsünüz. Buraya paper.jar yazarsanız dosyanın gerçek adı paper.jar.jar olur. Aynı şekilde Not Defteri ile oluşturulan bir dosya start.bat.txt olarak kaydedilir.
OneDrive ve senkronize klasörler#
C:\minecraft\server gibi kök seviyesinde, boşluksuz ve senkronize edilmeyen bir klasör kullanın.Java kurulu ama PATH’te değil#
Farklı bir hata olsa da sık karıştırılır: java komutu tanınmıyorsa mesaj “is not recognized as an internal or external command” olur. Bu durumda jar dosyası değil Java kurulumu sorunludur. Kontrol için:
java -version
where java
$env:JAVA_HOME
Java kurulumu ve JAVA_HOME ayarı Windows Java kurulumu sayfasında anlatıldı.
Linux’a Özgü Tuzaklar#
Satır sonu karakterleri#
Betiği Windows’ta yazıp Linux’a kopyaladıysanız CRLF satır sonları soruna yol açar. Belirti tuhaftır: dosya vardır ama kabuk bulamaz.
file start.sh
# start.sh: Bourne-Again shell script, ASCII text executable, with CRLF line terminators
sed -i 's/\r$//' start.sh
dos2unix start.sh
Göreli yol ve systemd#
systemd servisi olarak çalıştırıyorsanız çalışma dizini açıkça belirtilmelidir; aksi halde servis kök dizinde başlar ve jar’ı bulamaz:
[Unit]
Description=Minecraft Sunucusu
After=network.target
[Service]
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms10G -Xmx10G -jar /opt/minecraft/paper.jar nogui
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
WorkingDirectory satırı olmadan servis Unable to access jarfile ile düşer. Servis kurulumu systemd servisi sayfasında ayrıntılandırıldı.
Doğru Jar’ı İndirmek#
Dosya bozuksa ya da yanlış kaynaktan geldiyse yeniden indirin. Yalnızca resmî adresleri kullanın:
-
Paper 26.2 sunucu jarÖnerilenİndir
-
Resmî Minecraft sunucu jar (vanilla)İndir
-
Eclipse Temurin JDK 25LTSİndir
-
Notepad++ (betik düzenleyici)İndir
Bağlantılar resmî kaynaklara gider. Üçüncü taraf sitelerden jar indirmeyin.
Linux’ta doğrudan komut satırından indirmek isterseniz Paper’ın resmî API’si en güvenli yoldur:
curl -s https://fill.papermc.io/v3/projects/paper/versions/26.2/builds/latest
# dönen JSON içindeki indirme adresini kullanın, dosyayı paper.jar olarak kaydedin
Tekrarını Önleyecek Dosya Düzeni#
Aşağıdaki düzen bu hatayı büyük ölçüde ortadan kaldırır:
- Kısa ve boşluksuz yol
- Windows:
C:\minecraft\server— Linux:/opt/minecraft - Sabit jar adı
- İndirdiğiniz jar’ı her zaman
paper.jarolarak adlandırın; betiğe dokunmanız gerekmez. - Betikte dizin sabitleme
- Windows:
cd /d "%~dp0"— Linux:cd "$(dirname "$0")" - Ayrı kullanıcı
- Linux’ta sunucuyu root ile değil
minecraftkullanıcısıyla çalıştırın. - Antivirüs istisnası
- Windows’ta sunucu klasörünü tarama dışı bırakın.
Benzer Görünen Ama Farklı Olan Hatalar#
Sunucu açılmadığında konsola düşen mesajlar birbirine benzer. Hangi mesajın hangi anlama geldiğini ayırmak, yanlış yerde arama yapmanızı engeller.
| Mesaj | Anlamı | Nereye bakılır |
|---|---|---|
Unable to access jarfile | Dosya bulunamadı veya okunamadı | Dosya adı, dizin, izinler |
java is not recognized … | Java kurulu değil ya da PATH’te yok | Java kurulumu |
UnsupportedClassVersionError | Jar açıldı ama Java sürümü yetersiz | Java sürüm hatası |
Invalid or corrupt jarfile | Dosya bozuk ya da eksik indirilmiş | Boyutu kontrol edin, yeniden indirin |
no main manifest attribute | Jar çalıştırılabilir değil (eklenti jar’ı olabilir) | Doğru sunucu jar’ını indirin |
You need to agree to the EULA | Jar çalıştı, lisans onayı eksik | EULA hatası |
Son satır özellikle önemlidir: EULA mesajını gördüyseniz jar sorunu tamamen çözülmüş, sunucu çalışmaya başlamış demektir. Bir eklenti jar’ını sunucu jar’ı sanıp çalıştırmak da sık görülen bir karışıklıktır; eklentiler plugins klasörüne konur, -jar parametresiyle çalıştırılmaz.
İlgili Hata Sayfaları#
- UnsupportedClassVersionError — jar bulunuyor ama Java sürümü uymuyorsa.
- EULA hatası — sunucu başlıyor ama hemen kapanıyorsa.
- Failed to bind to port hatası — sunucu portu açamıyorsa.
- Tüm Minecraft sunucu hataları ve çözümleri — pillar rehber.
Özetle#
Unable to access jarfile hatası her zaman dosya yolu, dosya adı ya da izin üçlüsünde çözülür. Önce Windows’ta uzantıları görünür yapıp gerçek dosya adını doğrulayın, ardından betiğe çalışma dizinini sabitleyen satırı ekleyin. Linux tarafında dosya sahipliğini sunucu kullanıcısına verin ve systemd kullanıyorsanız WorkingDirectory satırını unutmayın. Kalıcı çözüm için sunucuyu boşluksuz kısa bir yola koyun, jar’ı her zaman sabit bir adla saklayın ve betiği çift tıklamak yerine komut satırından test edin.