21
respostas

Erro ao executar a classe Principal

Could not find or load main class br.com.alura.Principal in module br.com.alura

alguem pode me ajudar com esse erro?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
21 respostas

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.