↓ Skip to main content

Eclipse autocompletion is dead

·208 words·1 min
Sergii Zolotarov
Author
Sergii Zolotarov
Twenty years of Java, from Kyiv to Leeuwarden. Currently at Booking.com

Try this simple example:


public class Main {
    
    public static class Item {}

    public static void main(String[] args) {
        Item myItem = new Item();
        // enter "add" and ctrl+space
    }

    private static void add(Item item) {
    }
    
}

If you do it in clean installation of Eclipse the add(myItem) will be added, which I expect. After you install AJDT it will be add(item) - just the name of method argument. Stupid and annoying. It trippled the effort on coding - first you have to enter obvious arguments yourself and moreover you have to correct the meaningless “best guesses” in case you do not have a source for the library you are calling. In this case argument names will be… you guessed it - arg0, arg1, etc.

After installing AJDT you will never get reasonable autocompletion for method and constructor parameters. Luckily I’ve found a simple solution - go to Window/Properties/JDT Weaving and turn it off. Then all of a sudden autocompletion is back again :) It seems that weaving features of AJDT are not affected by this button.

PS: Corresponding bug was recorded. Waiting for the fix.

PPS: Wow, they fixed it the day I reported the bug :)


First published on the old anydoby.com blog on 2009-06-30.