Eclipse Helios no OS X O Snow Leopard trava com freqüência ao editar certos arquivos PHP

2

Eu uso o Eclipse Helios (plataforma Eclipse: 3.6.0.I20100608-0911, Eclipse IDE para desenvolvedores PHP: 1.3.0.20100617-0520) o tempo todo no OS X (Snow Leopard), e parece que só tenho problemas sempre que eu estou editando um arquivo PHP que faz parte do framework de blogs do WordPress. Quando eu movo meu cursor para uma variável ou nome de função, isso geralmente aciona a bola de praia da morte. Eu suspeito que o Eclipse está tentando procurar essa variável / função e, por algum motivo, isso causa um loop infinito.

Às vezes, não são apenas variáveis ou funções. Apenas hoje eu estava tentando substituir todas as ocorrências de uma string entre aspas. Toda vez que eu clicava em "Substituir Tudo", o programa congelava imediatamente após a sequência ser substituída e o cursor de texto era movido para a posição substituída. Acho que a movimentação do cursor de texto é importante, pois obtive o mesmo resultado quando procurei pela string (movendo o cursor), mas NÃO quando procurei por uma string inexistente.

Eu tentei desativar tudo nas minhas preferências relacionadas a ocorrências marcadas, pairando, assistência de código, etc. Nada ajuda.

Eu uso o Eclipse para todos os meus projetos, e acho que são apenas projetos WordPress onde isso acontece. Aqui está o meu arquivo eclipse.ini:

-startup
../../../plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx_1.1.0.v20100503
-product
org.eclipse.epp.package.php.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UseConcMarkSweepGC
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CompileThreshold=5
-Xms128m
-Xmx512m
-Xss2m
-Xdock:icon=../Resources/Eclipse.icns
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-framework
../../../plugins/org.eclipse.osgi.services_3.2.100.v20100503.jar

Eu tenho 4 GB de RAM, então não sei se o problema é que estou subutilizando meus recursos. Aqui está o que eu vejo várias vezes no log de erros:

!ENTRY org.eclipse.jface 2 0 2011-01-16 16:26:21.533
!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
!SUBENTRY 1 org.eclipse.jface 2 0 2011-01-16 16:26:21.533
!MESSAGE A conflict occurred for ALT+COMMAND+Q P:
Binding(ALT+COMMAND+Q P,
ParameterizedCommand(Command(org.eclipse.ui.views.showView,Show View,
Shows a particular view,
Category(org.eclipse.ui.category.views,Views,Commands for opening views,true),
org.eclipse.ui.handlers.ShowViewHandler@2a46d1,
[Lorg.eclipse.ui.internal.commands.Parameter;@18f50c2,,true), [Lorg.eclipse.core.commands.Parameterization;@1ff1855),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)
Binding(ALT+COMMAND+Q P,
ParameterizedCommand(Command(org.eclipse.ui.views.showView,Show View,
Shows a particular view,
Category(org.eclipse.ui.category.views,Views,Commands for opening views,true),
org.eclipse.ui.handlers.ShowViewHandler@2a46d1,
[Lorg.eclipse.ui.internal.commands.Parameter;@18f50c2,,true), [Lorg.eclipse.core.commands.Parameterization;@96b40c),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)

!ENTRY org.eclipse.core.net 1 0 2011-01-16 16:26:22.217
!MESSAGE System property http.proxyHost has been set to 127.0.0.1 by an external source. This value will be overwritten using the values from the preferences

!ENTRY org.eclipse.core.net 1 0 2011-01-16 16:26:22.217
!MESSAGE System property http.proxyPort has been set to 8888 by an external source. This value will be overwritten using the values from the preferences

!ENTRY org.eclipse.core.net 1 0 2011-01-16 16:26:22.218
!MESSAGE System property https.proxyHost has been set to 127.0.0.1 by an external source. This value will be overwritten using the values from the preferences

!ENTRY org.eclipse.core.net 1 0 2011-01-16 16:26:22.219
!MESSAGE System property https.proxyPort has been set to 8888 by an external source. This value will be overwritten using the values from the preferences

Eu fiz algumas experiências com o roteiro específico que está me causando problemas. É um híbrido de HTML e PHP, então o Eclipse tem que fazer validação de HTML e PHP. Gostaria de saber se a validação HTML tinha algo a ver com isso, então criei um novo arquivo, copiei o conteúdo e mexi com o elemento doctype. Descobri que, se eu substituísse o bem formado XHTML 1.0 Strict doctype elemento com um doctype genérico (como tal: <! DOCTYPE html >), então eu não travar o programa apenas movendo o cursor ao redor.

Eu configurei todas as regras de validação de HTML para "Ignorar", mas isso ainda não resolveu meus problemas. Por enquanto, vou apenas fazer o eco do doctype usando PHP ao invés de inseri-lo literalmente. Isso parece evitar falhas. Percebo que quando movo o cursor pelo documento, o Eclipse exibe o "xpath" para o meu local atual na parte inferior da tela. Às vezes, há um atraso enquanto descubro meu caminho atual. Talvez quando está validando contra o doctype Strict, ele tem problemas para calcular rapidamente o xpath enquanto movo o cursor ao redor? Talvez tenha um estouro de pilha que causa uma falha.

    
por William 17.01.2011 / 02:49

1 resposta

0

tente baixar a versão do Indigo e veja se isso ainda acontece ... parece ser mais estável que o Helios para mim, mesmo que ainda não seja uma versão estável

    
por 28.01.2011 / 21:27