Desbravando Java e Orientação a Objetos - OrdenandoComJava

Estou com um problema ao executar a classe OrdenandoComJava do exemplo da página 181, pois o meu compilador entende que o “List <.Produto> produtos = Arrays.asList(fisico, ebook);” não pode ser resolvido, conforme esta mensagem: “Exception in thread “main” java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from List<Livro&Promocional> to List
at br.com.casadocodigo.livraria.teste.OrdenandoComJava.main(OrdenandoComJava.java:28)”

Mas se eu considerar “List<? extends Livro> produtos = Arrays.asList(fisico, ebook);” o código roda normanlmente.

Alguém poderia me ajudar?

No livro não consta que o código deve ser?
List<Produto> produtos = Arrays.asList(fisico, ebook);

Sim. No livro sim, mas na IDE dá aquele erro, conforme post

O legal é que os editores/escritores colocam este link para o pessoal ser ajudado em suas obras e no entanto o cara não tem nem a capacidade de pelo menos uma vez na semana dar uma olhada nos posts que pertencem aos livros publicados por ele. Muito obrigado #Rodrigo Turini, seu livro é excelente, no entanto não está muito preocupado em tirar dúvidas.

Verifique se o pacote importado do List é do java.util.
Pode acontecer de você estar importando o objeto do pacote errado.