Desativar processo de construção de espaço de trabalho no Eclipse


87

O que o Eclipse está fazendo quando o processo de construção do espaço de trabalho está em execução? Posso desabilitar porque está demorando muito para ser concluído e não sei se é necessário. Obrigado


12
Além disso, o que exatamente é construir um espaço de trabalho?
— Super Cat

15
Eu adoraria saber por que esse processo precisa impedir você de fazer qualquer outra coisa no Eclipse.
— Tony Topper

Respostas:


102

Construir espaço de trabalho é sobre a construção incremental de qualquer evolução detectada em um dos projetos abertos no espaço de trabalho usado atualmente.

Você também pode desativá-lo através do menu " Project / Build automatically".

Mas eu recomendaria primeiro verificar:

  • se um Projeto Limpar tudo / Construir resultar no mesmo tipo de longa espera (após desativar esta opção)
  • se você tem (desta vez com a construção ativada automaticamente) algumas opções de validação que você pode desativar para ver se elas têm uma influência no tempo de compilação global ( Preferences / Validationsou Preferences / XML / ...se você tem o WTP instalado)
  • se uma nova instalação do eclipse referenciando o mesmo espaço de trabalho (veja este eclipse.ini para mais) resultar no mesmo problema (com a construção ativada automaticamente)

Observe que o bug 329657 (aberto em 2011, em andamento em 2014) é sobre interromper uma compilação (muito longa), em vez de cancelá- la:

Há uma diferença importante entre interromper e cancelar build.

  • Quando uma construção é cancelada, ele normalmente lida com isso descartando o estado de construção incremental e permitindo que a próxima construção seja uma reconstrução completa. Isso pode ser bastante caro em alguns projetos.
    Como usuário, acho que prefiro esperar a conclusão da construção incremental de 5 segundos em vez de cancelar e resultar em uma reconstrução de 30 segundos depois.

  • A ideia com a interrupção é que um construtor poderia lidar com a interrupção com mais eficiência salvando seu estado intermediário e retomando na próxima chamada.
    Na prática, isso é difícil de implementar, portanto, o limite mais comum é quando verificamos se há interrupção antes / depois de chamar cada construtor na cadeia.

 


Veja também este tópico como um exemplo de reinstalação bem-sucedida do eclipse: dev.eclipse.org/newslists/news.eclipse.webtools/msg08521.html
— VonC

1
Esta resposta não está correta. Projeto -> Construir Automaticamente sempre foi desmarcado, mas ainda assim decide atualizar o espaço de trabalho aleatoriamente, me impedindo completamente de fazer qualquer coisa nesta base de código gigantesca que não consigo reduzir no tempo que tenho para concluir tarefas para os clientes.
— Spencer Williams

15

Você pode alternar para a construção manual para controlar quando isso for feito. Apenas certifique-se de que Project > Build Automaticallyno menu principal esteja desmarcado.


Obrigado, gostaria de saber se você também pode me dizer o que exatamente é um espaço de trabalho de construção?
— Super Cat

3

se necessário, programático de um código PDE ou JDT:

public static void setWorkspaceAutoBuild(boolean flag) throws CoreException 
{
IWorkspace workspace = ResourcesPlugin.getWorkspace();
final IWorkspaceDescription description = workspace.getDescription();
description.setAutoBuilding(flag);
workspace.setDescription(description);
}

0

Para qualquer um que esteja enfrentando um problema em que a construção automática está desmarcada, mas o projeto ainda está em construção. Certifique-se de que seu projeto não foi implantado no servidor na guia do servidor e informado para permanecer sincronizado.


Vale a pena mencionar brevemente como determinar se o 'instruído a permanecer síncrono' está em vigor - não vejo nenhuma menção a isso na minha guia de servidores, por exemplo, nem quando verifico o menu de contexto de propriedades no servidor.
— Razzle
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.