Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Beans.xml não localizado em META-INF (jar) [Resolvido]

Olá pessoal,

Estou desenvolvendo uma aplicação com WELD. Dentro do Eclipse ele encontra normalmente o beans.xml, porém ao exportar para .jar, não funciona, dando o erro "Exception in thread "main" java.lang.IllegalStateException: WELD-ENV-000016: Missing beans.xml file in META-INF".

Li várias threads onde pedem para jogar dentro de src/main/resources/META-INF, porém fiz isso e também acusa a mesma falha.

Alguém já passou por isso?

Obrigado

4 respostas

Oi Ismael, tudo bem?

Como você está fazendo para exportar? É uma aplicação Web clássica, que normalmente é no formato .war?

Você pode utilizar o seguinte comando do maven pra gerar o .war, digitando no terminal e estando no diretório do pom.xml:

$ mvn package

Então o .war ficará localizado na pasta target dentro do seu projeto.

Pelo Eclipse, é só clicar com o botão direito no projeto, escolher "Run As > Maven Build...".

Na tela que aparecer, em Goals, digite package:

Agora é só clicar em "Run". As próximas vezes é só clicar no botão verde de "play" do Eclipse. Ou na setinha pra baixo que tem do lado dele e escolher o build que foi gerado.

Com o .war em mãos, você pode copiá-lo para a pasta webapps.

Esse seria o processo pra esse tipo de aplicação.

Abraço!

Olá Lucas, tudo bem e você?

Na verdade estou tentando gerar o .jar do meu projeto, pois irei rodar essa aplicação no meu console, dentro de um job.

Com o projeto WEB é tranquilo, inclusive atualmente já tenho projetos rodando, mas quando fui gerar um .jar de outro projeto, aí não deu certo.

Obrigado,

Att.,

Ismael Junior

Oi Ismael!

Tenta atualizar pra versão mais recente a dependência do weld-se?

Subi um projeto de teste aqui e rolou: https://github.com/lucas-felix/cdi-se

Pra gerar o jar dei um mvn package e pra executar:

java -jar target/cdi-se-1.0-SNAPSHOT-jar-with-dependencies.jar

Tenta aí com a versão mais recente e avisa no que deu?

Abraço!

solução

Olá Lucas,

Obrigado pelo retorno.

A versão do Weld já estava na última versão, porém minha estrutura de projeto não estava adequada. Para gerar esse projeto, tinha criado um Java Project sem o Maven e depois converti o projeto. Isso fez com que a estrutura de pastas não ficasse igual, e aí quando eu exportava ou até mesmo tentava fazendo o build no projeto não dava certo.

Criei novamente o projeto, porém desta vez como Maven e aí funcionou corretamente.

Muito obrigado pela ajuda.

Grande abraço,

Ismael Junior