Eclipse, yükleme tezgahına takılıyor


96

Tutulmam tezgahı yüklemeyi durdurur. ./Eclipse --clean ile başlamayı denedim

Konsoldan başlarken aşağıdaki istisnayı atar:

java.lang.NullPointerException
    at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
    at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
    at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
    at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
    at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
    at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
    at org.tigris.subversion.clientadapter.javahl.Activator.isAvailable(Activator.java:92)
    at org.tigris.subversion.clientadapter.Activator.getAnyClientAdapter(Activator.java:81)
    at org.tigris.subversion.subclipse.core.SVNClientManager.getAdapter(SVNClientManager.java:145)
    at org.tigris.subversion.subclipse.core.SVNClientManager.getSVNClient(SVNClientManager.java:92)
    at org.tigris.subversion.subclipse.core.SVNProviderPlugin.getSVNClient(SVNProviderPlugin.java:425)
    at org.tigris.subversion.subclipse.core.status.NonRecursiveStatusUpdateStrategy.statusesToUpdate(NonRecursiveStatusUpdateStrategy.java:53)
    at org.tigris.subversion.subclipse.core.status.StatusCacheManager.refreshStatus(StatusCacheManager.java:273)
    at org.tigris.subversion.subclipse.core.resourcesListeners.FileModificationManager.refreshStatus(FileModificationManager.java:179)
    at org.tigris.subversion.subclipse.core.resourcesListeners.FileModificationManager.resourceChanged(FileModificationManager.java:128)
    at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:291)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:285)
    at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:149)
    at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:395)
    at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1530)
    at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:45)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

Com.android.ide.eclipse.adt yüklenirken durur

Tezgahımın nesi var?

Eclipse başlangıç ​​ekranı


1
Görünüşe göre (tek tire) aslında bir etkiye sahip gibi --cleangörünürken -clean(benim durumumda Eclipse Neon kullanarak) hiçbir şey yapmıyor .
Christopher Schultz

Yanıtlar:


146

DISCLAIMER: THIS WILL DELETE ALL OF YOUR ECLIPSE WORKSPACE SETTINGS AND YOU WILL HAVE TO RE-IMPORT ALL YOUR PROJECTS, THERE ARE LESS DESTRUCTIVE ANSWERS HERE

Takip etmeyi dene:

  1. Yerel çalışma alanınızdaki .metadata klasörünü silin (benim için çalışan budur). Düzgün kapatılmazsa tutulmanın düzgün başlamasını engelleyen bir .LOCK dosyası içeriyor gibi görünüyor. Unix tabanlı sistemlerde komut satırına aşağıdakileri yazabilirsiniz;

    rm -r workspace/.metadata
    
  2. .Eclipse dizininizi ana dizininizden silin . Tutulmayı başlatın. Bu işe yaramazsa,

  3. Tutulmayı başka bir kullanıcı hesabı altında açın. Yüklenirse, sorunun tutulma kurulumunuzda değil hesabınızda olduğunu bilirsiniz.


yanlışlıkla Dosya-> yeniden başlat'ı tıkladıktan sonra başıma geldi.
nurnachman

68
Çoğu durumda rm workspace/.metadata/.lockbenim için çalışıyor. Tutulmayı ./eclipse -clean -refreshdenediğiniz her şeyi kullanarak başlattığınızdan emin olun . Bize öğrettiğin için teşekkürler mv .eclipse .eclipse.old, ama bugün yardımcı olmadı. Bugün silmeye yardımcı oldu workspace/.metadata/.plugins/. Tüm Eklentiler aslında bundan sonra çalıştı. Bazı ayarlar gitti. Daha sonra Import...mevcut tüm projelerinizi tek seferde içe aktarmak için kullanabilirsiniz . Silme workspace/.metadatason seçenektir, ancak işe yarar. workspace/.metadata/.mylynGörevlerinizi kaybetmek istemiyorsanız devam edebilirsiniz .
sulai

Bunun için çok teşekkürler! Eclipse aniden yanıt vermeyi bıraktığında bana çok fazla çaba sarf etti ... Stackoverflow harika ve topluluk da öyle!
HungryForKnowledge

3
Sadece .lock dosyasını silin - tüm ayarlarınızı kaybetmenize gerek yok!
slott

7
silme .Lock bana yardım etmedi ama silme .metadata/.plugins/org.eclipse.core.resources/.snapyaptılar
serge

92

Http://off-topic.biz/en/eclipse-hangs-at-startup-showing-only-the-splash-screen/ adresinde gösterilen prosedür benim için çalıştı:

  1. cd .metadata / .plugins
  2. mv org.eclipse.core.resources org.eclipse.core.resources.bak
  3. Tutulmayı başlatın. (Proje bulunamadığı için bir hata mesajı veya boş bir çalışma alanı göstermelidir.)
  4. Tüm açık düzenleyiciler sekmelerini kapatın.
  5. Tutulmadan çıkın.
  6. rm -rf org.eclipse.core.resources (Yeni oluşturulan dizini silin.)
  7. mv org.eclipse.core.resources.bak / org.eclipse.core.resources (Orijinal dizini geri yükleyin.)
  8. Tutulmaya başlayın ve çalışmaya başlayın. :-)

Diğer cevaplarda:

eclipse -clean -clearPersistedState

bahsediliyor - bu aynı veya hatta daha iyi etkiye sahip gibi görünüyor.

Burada, çalışan tutulmayı isteğe bağlı bir öldürme ile başlangıç ​​yapmak için MacOS (Macports kullanan) ve Linux (Eclipse Equinox ile Ubuntu'da test edilmiştir) için bir komut dosyası verilmiştir. Senaryoyu ihtiyaçlarınıza göre uyarlamak isteyebilirsiniz. Yeni platformlar eklerseniz, lütfen bu yanıttaki komut dosyasını düzenleyin.

#!/bin/bash
# WF 2014-03-14
#
# ceclipse:
#   start Eclipse cleanly
#
#   this script calls eclipse with -clean and -clearPersistedState
#   if an instance of eclipse is already running the user is asked
#   if it should be killed first and if answered yes the process will be killed
#
# usage: ceclipse
#

#
# error
#
#   show an error message and exit
#
#   params:
#     1: l_msg - the message to display
error() {
  local l_msg="$1"
  echo "error: $l_msg" 1>&2
  exit 1 
}

#
# autoinstall
#
#  check that l_prog is available by calling which
#  if not available install from given package depending on Operating system
#
#  params: 
#    1: l_prog: The program that shall be checked
#    2: l_linuxpackage: The apt-package to install from
#    3: l_macospackage: The MacPorts package to install from
#
autoinstall() {
  local l_prog=$1
  local l_linuxpackage=$2
  local l_macospackage=$3
  echo "checking that $l_prog  is installed on os $os ..."
  which $l_prog 
  if [ $? -eq 1 ]
  then
    case $os in 
      # Mac OS
      Darwin) 
        echo "installing $l_prog from MacPorts package $l_macospackage"        
        sudo port install $l_macospackage
      ;;
      # e.g. Ubuntu/Fedora/Debian/Suse
      Linux)
        echo "installing $l_prog from apt-package $l_linuxpackage"        
        sudo apt-get install $l_linuxpackage
      ;;
      # git bash (Windows)
      MINGW32_NT-6.1)
        error "$l_prog ist not installed"
      ;;
      *)
        error "unknown operating system $os" 
    esac
  fi
}

# global operating system variable
os=`uname`

# first set 
#  eclipse_proc - the name of the eclipse process to look for
#  eclipse_app - the name of the eclipse application to start
case $os in 
    # Mac OS
    Darwin) 
      eclipse_proc="Eclipse.app" 
      eclipse_app="/Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse"
      ;;
    # e.g. Ubuntu/Fedora/Debian/Suse
    Linux)
      eclipse_proc="/usr/lib/eclipse//plugins/org.eclipse.equinox.launcher_1.2.0.dist.jar"
      eclipse_app=`which eclipse`
      ;;
    # git bash (Windows)
    MINGW32_NT-6.1)
      eclipse_app=`which eclipse`
      error "$os not implemented yet"
      ;;
    *)
      error "unknown operating system $os" 
esac

# check that pgrep is installed or install it
autoinstall pgrep procps

# check whether eclipse process is running
# first check that we only find one process
echo "looking for $eclipse_proc process"
pgrep -fl "$eclipse_proc"
# can't use -c option on MacOS - use platform independent approach 
#eclipse_count=`pgrep -cfl "$eclipse_proc"`
eclipse_count=`pgrep -fl "$eclipse_proc" | wc -l | tr -d ' '`

# check how many processes matched
case $eclipse_count in
  # no eclipse - do nothing
  0) ;;
  # exactly one - offer to kill it
  1) 
     echo "Eclipse is running - shall i kill and restart it with -clean? y/n?"
       read answer
       case $answer in
         y|Y) ;;
           *) error "aborted ..." ;;
       esac
     echo "killing current $eclipse_proc"
     pkill -f "$eclipse_proc"
     ;;
  # multiple - this is bogus
  *) error "$eclipse_count processes matching $eclipse_proc found - please adapt $0";;
esac

tmp=/tmp/eclipse$$
echo "starting eclipse cleanly ... using $tmp for nohup.out"
mkdir -p $tmp
cd $tmp

# start eclipse with clean options
nohup $eclipse_app -clean -clearPersistedState&

1
Teşekkürler! bu daha iyi bir yaklaşımdır, sadece .metadata klasörünün tamamını siler. mükemmel çalıştı
Jakob

1
Çok daha iyi. Mac OS X Mavericks'te
Kepler'a

5
Bu "tutulma-temiz -temizPersistedState" bana yardımcı oldu, teşekkürler!
Michal

2
-clean -clearPersistedState benim için Aptana Studio 3'te 7 galibiyetinde çalıştı
Lorenz Haase

2
eclipse -clean -clearPersistedState Kepler'de Çalıştı Win 7
Yitzchak

37
./eclipse -clean -refresh

Sulai'nin yorumunda belirtildiği gibi 20 Aralık 2012 saat 12: 46'da, bu benim için çalıştı.

Ancak, Mac OS X'te ./eclipse'e nasıl gideceğimi bulmam gerekiyordu.

İşte çözüm:

cd Eclipse.app/Contents/MacOS/

Andrew'un bu gönderi için yaptığı yorum için teşekkür ederiz: https://stackoverflow.com/a/1783448/2162226


2
Önce -clean -refresh kullanarak yeni bir çalışma alanı açmalıydım (test adını verdim). Ve Eclipse (benim durumumda GGTS idi) açıldığında, Dosya> Çalışma Alanını Değiştir'i seçtim ve başlangıçta donma sorununa neden olan çalışma alanına geri döndüm.
pm_labs

Eclipse Luna'da uygulama aslında sadece dosyadır, klasöre cd koymaya gerek yoktur. Sadece çalışıyor ./eclipse -clean -refreshbenim için düzeltildi
Sirenler

20

Bulduğum en iyi çözüm şu dosyayı silmek: workspace / .metadata / .plugins / org.eclipse.e4.workbench / workbench


2
Tutulma çivitinde. Rm workspace / .metadata / .plugins / org.eclipse.ui.workbench /
Gere

1
Bu, Windows 7'de TIBCO BusinessWorks Design Studio ile bu sorunu benim için çözdü.
Alex Beynenson

MacBook pro 12 "cihazımda, bu çözüm benim için en iyisi oldu
ironmantis7x

12

tüm meta verileri silmeye gerek yoktur. çalışma alanı klasörünüzdeki org.eclipse.core.resources altındaki .snap dosyasını silmeyi deneyin örn.

workspaceFolder.metadata.plugins \ org.eclipse.core.resources


Bu dosyayı silmek, Eclipse başlangıçta neredeyse her askıda kaldığında benim için çalıştı. Teşekkürler!
Joseph

.snap dosyasını silmek benim için çalıştı Eclipse Mars - 4.5.1 (Mac El Capitan'da)
hashcoder

JBoss Developer Studio 10 ile benim için çalıştı
Thomas

11

* .Snap dosyasını çalışma alanı dizininden (ve tüm alt dizinlerden) silmeyi çözdüm:

meta veriler \ .plugins \ *. snap


1
Bu beni tüm ayarlarımı kaybetmekten kurtardı!
tprk77

9

Oldukça eski bir soru ama en basit cevap henüz yayınlanmadı.
İşte burada:
1) içinde [workspace]\.metadata\.plugins\org.eclipse.e4.workbench silme workbench.xmi dosyası.
Çoğu durumda yeterlidir - Eclipse'i yüklemeyi deneyin.
Yine de, belirli perspektif ayarlarınızı yeniden yapılandırmanız gerekir (varsa)

2) Şimdi mükemmel çalışan projeler oluştururken sorun mu yaşıyorsunuz? Deneyimlerime göre aşağıdaki adımlar yardımcı oldu:
- Projeler -> Otomatik olarak oluştur
- Java perspektifine geçiş (henüz değilse): Pencere -> Perspektifi aç -> Java
- Sorunlar görünümünü bulun veya açın: Pencere -> Görünümü göster -> Sorunlar
- sorun gruplarına sağ tıklayın ve Sil'i seçin . Lint hatalarını sildiğinizden emin olun
- çalışma alanını temizleyin: Proje -> Temizle ... seçeneğiyle Tüm projeleri temizle
- Projeleri kontrol edin - > Otomatik olarak oluştur
- bazı projeler için sorunlar devam ederse: projeye sağ tıklayın, Özellikler -> Android'i seçinve uygun Proje Oluşturma Hedefinin seçildiğinden emin olun

3) Benim için her zaman yeterliydi. Ancak yine de sorun yaşıyorsanız - @george gönderi önerilerini deneyin


1
Teşekkür ederim! Başka hiçbir şey çalıştı ama workbench.xmi silme
Basitçe Craig

Bir Windows makinesi için harika bir çözüm. Teşekkür ederim!
Mirko Raimo

6

Aşağıdaki prosedür MacOS (Mavericks) ve Eclipse Luna 4.4.1 cihazımda çalıştı:

"WorkspaceFolder" .metadata.plugins \ org.eclipse.core.resources \ yolu altındaki .snap dosyasını silin

Mac'te bu klasöre nasıl gideceğinizi bilmiyorsanız, Cmd + Shift + G (Klasöre git) tuşlarına basın ve gezinmek istediğiniz tam adresi yazın.



3

çalışma alanını / .metadata / .lock silme ve tutulmayı -clean -refresh ile başlatmak benim için çalıştı.


2

Çalışma alanı klasörünüzde bulabileceğiniz metadata.plugins \ içindeki org.eclipse.e4.workbench klasörünü silmeniz gerekir. Bu klasörü silmek benim için sorunu çözdü, umarım başkasına yardımcı olur!



0

Bu tür davranışların birçok olası nedeni vardır. Elinizdeki gibi bir kabuk isteminden çalıştırmanın yanı sıra, çalışma alanı günlük dosyanızda, çalışma alanı dizininizin altındaki .metadata / .log dosyası olan ipuçlarını aramaya değer. günlük kodunun kendisiyle yapın, ancak günlük yine de hatadan önce neler olup bittiğini belirlemeye yardımcı olabilir.

Web aramaları, bulduğunuz mesajlar için genellikle çeşitli dizinleri veya dosyaları silmek ve yeniden başlamak için öneriler sağlar. Bazen daha az yıkıcı çözümler için .metadata / .plugins / org.eclipse.ui.workbench / workbench.xml'nin bazı kısımlarını kaldırabildim.


0

.Metadata dizinindeki dosyaları silmeyle ilgili sorun, çalışma tezgahınızı sıfırdan başlatmanız gerekmesidir. Bu nedenle, tüm projelerinizi geri yüklemeniz biraz zaman alabilir, özellikle de birkaç projeniz varsa. .Metadata'yı bir yedekten geri yüklemek, sadece benim için işe yarayan eski yedeklenmiş dosyalar ile mevcut dosyaları değiştirerek.


0

Çalışma alanını daha yeni bir tutulma sürümüyle yüklemeyi ve kaydetmeyi denemek de yardımcı olabilir:

Eclipse 3.8 kullanıyorum. Başlarken açılış ekranı takılıyordu. Günlükte hata mesajı yoktu. Yardımcı olan şey çalışma alanını tutulması 4.2.2 ile açmaktı. Çalışma alanını açıp kapattıktan sonra 3.8 ile tekrar yükleyebildim.


0

Dosya tarihleri ​​hakkında biraz araştırma yaptıktan sonra, aynı sorunu (Kepler'imde rastgele tekrarlanan bir sorun) yerel çalışma alanımdaki şu dosyayı silerek çözdüm: .metadata.plugins \ org.eclipse.jdt.core \ variableAndContainers.dat

çalışma alanı geri yükleme üzerinde önemsiz bir etkiye sahip.

Umarım başka birine yardımcı olabilir ...


0

Çalışma alanınızda başka bir gizli klasör ".mylyn" bulacağınız gizli klasör adı .metadata bulacaksınız, onu silin ve çöp kutunuzu boşaltın, görev yöneticisine gidin, Eclipse işlemini durdurun ve yeniden başlatın Eclipse bu sefer çalışacaktır.

Zevk almak!


0

İşte benim için işe yarayan daha az yıkıcı bir yöntem:

Rastgele bir dizinden çalıştırdığım Spring Tool Suite'in (Eclipse'in bir uzantısı) bir kopyasıyla Windows makinesindeyim. İstemi Komuta doğrultusunda, benim içeriyordu dizine gidin zorunda kaldı STS.exeve koşmak: STS.exe -refresh.

Bundan sonra, Eclipse'imi normal bir şekilde açabildim (sabitlenmiş bir görev çubuğu simgesiyle).


0

.Metadata / .plugin / org.eclipse.core.resources klasörünün yedek bir kopyasını alın, ardından bu klasörü silin ve eclipse'i başlatın. Bu, çalışma alanını başlatmalıdır, ancak tüm projeler org.eclipse.core.resources olarak gidecek, tüm projelerin bir listesini tutar.

Ardından, tutulmayı düzgün bir şekilde kapatın ve org.eclipse.core.resources'i yedeklemeden .metadata / .plugins / klasörüne geri kopyalayın ve mevcut olanı geçersiz kılın.

Açık tutulma ve tüm projeleriniz normale döndüğünde işler yolunda gitmelidir.


0

Başlangıçta donma tutulması - çalışma alanını yüklemeden önce bu yazıya çok iyi cevap. benim için işe yarayan cevabı tekrar etmek

Çalışma alanı dizininizde aşağıdaki adımları uygulayın:

cd .metadata / .plugins

mv org.eclipse.core.resources org.eclipse.core.resources.bak

Tutulmayı başlatın. (Proje bulunamadığı için bir hata mesajı veya boş bir çalışma alanı göstermelidir.)

Tüm açık düzenleyiciler sekmelerini kapatın.

Tutulmadan çıkın.

rm -rf org.eclipse.core.resources (Yeni oluşturulan dizini silin.)

mv org.eclipse.core.resources.bak / org.eclipse.core.resources (Orijinal dizini geri yükleyin.)

Tutulmaya başlayın ve çalışmaya başlayın. :-)

Cevap CharlesB


-1

Çözümün hiçbiri davam için bana yardımcı olmadı.

Yine de çalışan çözümü buldum. Eclipse'de ADT eklentisi doğru şekilde güncellenmediğinde bunun olduğunu okudum.

Solution
From Eclipse. . .
1. Go to Help Tap
2. Click Check for Updates

Her şeyi güncelle ve whoa! Eclipse'i başlatırken artık donma yok!


-1

Bunların hepsini denemedim. Dizüstü bilgisayar / makine ile yeniden başlattım. Ve bundan sonra her şey normale döndü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.