При попытке указать тип переменных String, подчеркивает выражение красным. Вроде методы get возвращают Object.
for (Map.Entry entry : plants.entrySet()){
            Object key = entry.getKey();
            Object value = entry.getValue();
            System.out.println(key + " - " + value);
}
В такой реализации код заработал.