web-dev-qa-db-fra.com

Problème d'auto-complétion Eclipse

Je viens d'installer Eclipse Helios (Win7 64) et j'ai un problème étrange. Je tape syso-Ctrl-Space qui doit se terminer sous System.out.println ("") mais cela ne fonctionne pas! J'ai recherché sur le Web pendant environ une heure maintenant, j'ai configuré Préférences> Java> Editeur> Assistant de contenu aux valeurs par défaut, rien. Tout le reste semble fonctionner. Des idées?
Pour être clair: le raccourci fonctionne, il complète tout sauf "syso" comme on l'a vu jusqu'à présent, sur syso (également essayé sysout), il indique "Aucune proposition par défaut". Je ne pouvais pas trouver ce genre de raccourcis dans l'Assistant de contenu, mais je les ai quand même définis par défaut.

14
Eugene Marin

Si vous ne pouvez toujours pas utiliser l'auto-complétion, essayez d'activer le Modèles de propositions sous Assistant de contenu menu.Il s'agit de l'emplacement exact,

Windows->Preferences->Java->Editor->Content Assist->Advanced

Et assurez-vous de n'avoir qu'une seule entrée pour syso (Sous Modèles menu).

17
PraveenMax

Je crois que le bon modèle est "sysout" et je pense que cela peut être configuré quelque part mais ne peut pas vous dire où. Essayez sysout puis Ctrl + Espace C'est un modèle, vous pouvez trouver tous les modèles sous 

Fenêtre -> Préférences -> Java -> Editeur -> Modèles

Vous pouvez voir que le nom du modèle est "sysout". Ceci déclenchera alors la substitution de chaîne pour System.out.writeln (), mais vous pouvez modifier le nom du modèle (si vous préférez syso) et/ou le code réel généré en appelant le gabarit

À votre santé

8
Peter Perháč

J'utilise Eclipse Galileo et j'ai le même problème. Même après avoir essayé les solutions proposées ci-dessus, mais cela n'a pas fonctionné. Après avoir effectué le changement ci-dessous, il sort finalement.

  1. Allez dans Windows-> Préférences-> Java-> Editeur-> Modèles
  2. Sélectionnez le modèle sysout et modifiez-le.
  3. Modifiez le contexte de l'instruction Java à Java.

Et cela a fonctionné pour moi. J'espère que cela vous sera utile. 

4
Binay Sharma

Comme Peter l'a dit, il se trouve sous Fenêtre -> Java -> éditeur -> modèles. Recherchez la ligne avec les valeurs suivantes.

sysout "Instructions Java" "Imprimer au format standard" "sur"

l'aperçu devrait être comme suit ...

System.out.println(${Word_selection}${});${cursor}
3
Bill

Votre curseur doit être situé à un endroit où il serait légal d’obtenir cette ligne. Si votre curseur est dans une définition de méthode et que vous tapez syso, vous obtiendrez le remplacement. Toutefois, si votre curseur se trouve dans la partie du texte en dehors de toute définition de méthode, par exemple, lorsque vous déclarez des variables pour votre classe, syso ne suggérera pas la ligne illégale system.output.println () ;. 

J'ai eu ce problème, lu toutes les réponses ici, suis devenu convaincu qu'il DOIT fonctionner dans ma copie et me suis rendu compte que j'avais tapé syso AU-DESSOUS de la fermeture de ma dernière méthode plutôt que dans la méthode. 

Eclipse sur!

1
mwengler

Il suffit d'aller à l'adresse ci-dessous:

Windows-> Préférences-> Java-> Editeur-> Assistant de contenu-> Avancé

et cliquez sur restaurer par défaut .......... c'est tout 

son travail comme un charme à nouveau.

1
Mayank Nema

Vous pouvez essayer de définir le raccourci de Content Assist avec ALT + L. Si cela fonctionne, vous pouvez à nouveau choisir votre raccourci favori. (Le raccourci Ctrl + Espace entre en conflit avec le raccourci du changement de méthode de saisie). Dans Eclipse sur Linux, le raccourci de l'achèvement de Word est ALT + /, donc si vous définissez ce raccourci comme outil de Content Assist, il entre également en conflit.)

1
cfh008

Vérifiez également dans ce menu Eclipse: Windows -> Préférences -> Java -> Apparence -> Filtres de type

Si vous voyez Java.* ou javax.* ici, essayez de le supprimer (ou Restore Default fera le travail) et voyez que cela fonctionne, cela a fonctionné pour moi.

0
Imran

Vous pouvez avoir des raccourcis qui se chevauchent .. Allez à 'Aperçu' que dans la sous-section 'Clés'. Tapez "ctrl + espace" dans la section "Filtre de texte". Vous devriez voir "assistant de contenu" et probablement une autre commande avec le même raccourci. Si un autre raccourci existe, remplacez-le par un autre.

0
Ömer Sadık Aytaç

DIRTY WORKAROUND: Vous pouvez essayer le code AutoHotkey suivant si vous avez encore des problèmes, tout comme moi (je n'ai toujours PAS réussi à le réparer moi-même)

#persistent
#ifwinactive ahk_class SWT_Window0  ; Eclipse Java
:*:syso::
sendraw System.out.println()`;
loop, 2
    send {left}
return
#ifwinactive

Vous devez écrire cela dans un fichier .ahk et l'exécuter (AutoHotkey doit être installé). Vous voudrez peut-être mettre ce fichier dans votre dossier de démarrage. C'est un outil très utile, vous voudrez peut-être l'étendre un jour.

0
Blauhirn

Je viens de trouver la solution pour Eclipse Luna: écrivez syso et appuyez sur CTRL + Espace et cliquez sur "Activer la complétion intelligente du code" et vous êtes prêt. Je suis sûr que vous pouvez le trouver quelque part dans les options, mais de cette façon. C'est rapide et facile!

0
Georgi