Could not find or load main class br.com.alura.Principal in module br.com.alura
alguem pode me ajudar com esse erro?
Could not find or load main class br.com.alura.Principal in module br.com.alura
alguem pode me ajudar com esse erro?
Olá, Renato. Tudo certo? Você está tentando compilar ou executar? Pode nos informar o comando?
java --module-path mods -m br.com.alura/br.com.alura.Principal
Estou tentando executar esse comando
Você está dentro do diretório do módulo principal?
c:\Users\Renato Nobrega\eclipse-workspace\e-livraria>
Você precisa estar no diretório do módulo principal. Pode fazer este teste?
c:\Users\Renato Nobrega\eclipse-workspace\e-livraria\mods>java --module-path mods -m br.com.alura/br.com.alura.Principal Error occurred during initialization of boot layer java.lang.module.FindException: Module br.com.alura not found
Este projeto já é o e-livraria modular?
C:\Users\Renato Nobrega\eclipse-workspace\e-livraria\src\br.com.alura\br\com\alura
Esse é o caminho até a classe Principal
Legal. Dentro do diretório br.com.alura já possui o arquivo module-info.java?
sim, existe o arquivo module-info.java dentro desse diretorio
Você compilou com o comando javac -d mods\br.com.alura --module-path mods src\br.com.alura\br ... ?
javac -d mods/br.com.alura --module-path mods src\br.com.alura\br\com\alura\modelo\dominio\Categoria.java src\br.com.alura\br\com\alura\modelo\dominio\Livro.java src\br.com.alura\br\com\alura\modelo\dominio\NotaFiscal.java src\br.com.alura\br\com\alura\http\dao\LivroDAO.java src\br.com.alura\br\com\alura\nf\servico\NotaFiscalServico.java src\br.com.alura\br\com\alura\nf\subscriber\NotaFiscalSubscriber.java src\br.com.alura\br\com\alura\nf\util\NotaFiscalUtil.java src\br.com.alura\module-info.java src\br.com.alura\br\com\alura\Principal.java
A classe principal possui o método public static void main(String[] args)?
sim, possui esse metodo
Você pode colocar o conteúdo da classe principal e o conteúdo do seu module-info para eu poder analisar? =)
package br.com.alura;
import java.util.List; import java.util.Scanner; import java.util.stream.IntStream;
import br.com.alura.http.dao.LivroDAO; import br.com.alura.modelo.dominio.Livro; import br.com.alura.modelo.dominio.NotaFiscal; import br.com.alura.nf.util.NotaFiscalUtil;
public class Principal {
public static void main(String[] args) {
System.out.println("Listando todos os livros");
List<Livro> livros = new LivroDAO().listar();
IntStream.range(0, livros.size()).forEach(i -> {
System.out.println(i + "-" + livros.get(i).getNome());
});
Scanner scanner = new Scanner(System.in);
System.out.println("Qual livro deseja?");
Integer numero = scanner.nextInt();
System.out.println("Livro escolhido é o: " + livros.get(numero).getNome());
System.out.println("Favor inserir seu nome para gerar nota fiscal");
String nome = scanner.next();
NotaFiscalUtil util = new NotaFiscalUtil();
util.emitir(new NotaFiscal(nome));
System.out.println("Obrigado!");
Scanner scan = new Scanner(System.in);
scan.nextLine();
util.fechar();
scanner.close();
scan.close();
}
}
module br.com.alura{
requires java.net.http;
}
Após a compilação, você vê a pasta mods criada com o Principal.class?
C:\Users\Renato Nobrega\eclipse-workspace\e-livraria\mods\br.com.alura\br\com\alura
dentro desse diretorio não tem a classe Principal, copiei ela para esse diretorio e tentei executar e nao funcionou
C:\Users\Renato Nobrega\eclipse-workspace\e-livraria\mods\br.com.alura
dentro desse diretorio foi criado apenas module-info.class
Acabei de realizar o teste aqui. Estou usando linux.
joao@VictorPC:~/eclipse-workspace/1755-aula5-novidades-java-elivraria-master$ javac -d mods/br.com.alura --module-path mods src/br.com.alura/br/com/alura/modelo/dominio/Categoria.java src/br.com.alura/br/com/alura/modelo/dominio/Livro.java src/br.com.alura/br/com/alura/modelo/dominio/NotaFiscal.java src/br.com.alura/br/com/alura/http/dao/LivroDAO.java src/br.com.alura/br/com/alura/nf/servico/NotaFiscalServico.java src/br.com.alura/br/com/alura/nf/subscriber/NotaFiscalSubscriber.java src/br.com.alura/br/com/alura/nf/util/NotaFiscalUtil.java src/br.com.alura/module-info.java src/br.com.alura/br/com/alura/Principal.java
joao@VictorPC:~/eclipse-workspace/1755-aula5-novidades-java-elivraria-master$ java --module-path mods --module br.com.alura/br.com.alura.Principal
Listando todos os livros
0 - Desbravando Java e Orientação a Objetos 1 - Explorando APIs e bibliotecas Java 2 - Java 8 Prático 3 - Introdução e boas práticas em UX Design 4 - Conhecendo o Adobe Photoshop CS6 5 - Edição e organização de fotos com Adobe Lightroom 6 - Métricas Ágeis 7 - Scrum: Gestão ágil para projetos de sucesso 8 - Test-Driven Development 9 - Direto ao Ponto 10 - Guia da Startup 11 - O Mantra da Produtividade 12 - Java SE 7 Programmer I 13 - Java SE 8 Programmer I 14 - Zend Certified Engineer
Qual livro deseja?
1
Livro escolhido e o: Explorando APIs e bibliotecas Java
Favor inserir seu nome para gerar nota fiscal
João
Obrigado!!
emitindo
Nota fiscal gerada no nome de João dia 2020-08-11 no valor de 39.99
Então agora achamos o problema. Temos que saber o porquê a classe Principal, junto das demais dos outros pacotes, não estão sendo jogadas dentro da pasta mods.