Eu criei um arquivo JAR dessa forma jar cf jar-file input-files
. Agora, estou tentando executá-lo. Executá-lo não funciona (o comando jre não foi encontrado):
jre -cp app.jar MainClass
Isso também não funciona:
java -jar main.jar
(Falha ao carregar o atributo de manifesto da classe principal de main.jar).
Eu também descobri que
Para executar um aplicativo empacotado como um arquivo JAR (versão 1.2 - requer cabeçalho de manifesto Main-Class)
O que é o "cabeçalho do manifesto da classe principal"? Como faço para criá-lo e onde colocá-lo?
Main-Class: MainClass
e, em seguida, criei o arquivo .jar com o comando que você forneceu. Depois disso, consegui executar meu programajava -jar main.jar
.jar cfe app.jar MainClass *.class
Observação: -e foi adicionado no JDK 6.definir o classpath e compilar
create manifest.txt
crie seuApp.jar
execute yourApp.jar
fonte
Você pode correr com:
java -cp .;app.jar package.MainClass
Funciona para mim se não houver manifesto no arquivo JAR.
fonte
Recebi este erro, porque os argumentos estavam na ordem errada:
CORRIGIR
java maui.main.Examples tagging -jar maui-1.0.jar
ERRADO
java -jar maui-1.0.jar maui.main.Examples tagging
fonte
A maneira mais fácil de ter certeza de que criou o arquivo JAR executável corretamente, com o arquivo de manifesto apropriado, é usar o Eclipse para construí-lo para você. Em seu projeto Eclipse, você basicamente apenas seleciona Arquivo / Exportar no menu e segue os prompts.
Dessa forma, você pode ter certeza de que seu arquivo JAR está correto e saberá procurar em outro lugar se ainda houver um problema. O processo é descrito na íntegra nas Perguntas frequentes. Como faço para criar um arquivo JAR executável para um programa SWT independente? .
fonte
Export
no Eclipse IDE.Experimentar
java -cp .:mail-1.4.1.jar JavaxMailHTML
não há necessidade de ter
manifest
arquivo.fonte
Descobri que também estava tendo esse erro no NetBeans. Espero que o seguinte seja útil.
Este era o problema que eu estava tendo porque eu tinha outros programas de "teste" que estava usando no NetBeans e precisava ter certeza de que a classe principal na parte Executar da configuração do projeto estava definida corretamente.
muitas bênçãos, John P
fonte
Eu estava recebendo o mesmo erro quando executei:
jar cvfm test.jar Test.class Manifest.txt
O que resolveu foi o seguinte:
jar cvfm test.jar Manifest.txt Test.class
Meu manifesto tem o ponto de entrada conforme fornecido nos documentos do oracle (certifique-se de que haja um novo caractere de linha no final do arquivo):
Main-Class: Test
fonte
Eu enfrentei o mesmo problema. Este comando unix não consegue encontrar a classe principal. Isso ocorre porque as versões do JDK em tempo de execução e tempo de compilação são diferentes. Faça o jar através do eclipse após alterar a versão do compilador java. O link a seguir me ajudou.
http://crunchify.com/exception-in-thread-main-java-lang-unsupportedclassversionerror-comcrunchifymain-unsupported-major-minor-version-51-0/
Tente executar o jar criado após esta etapa e, em seguida, execute-o
fonte
Se o caminho da sua classe estiver totalmente especificado no manifesto, talvez você precise da última versão do ambiente de execução java. Meu problema foi corrigido quando reinstalei o jre 8.
fonte
Se você estiver usando o eclipse, tente abaixo: 1. Clique com o botão direito do mouse no projeto -> selecione Exportar 2. Selecione o arquivo Jar executável em selecionar um destino de exportação 3. Insira o nome do jar e selecione "Pacote necessário ..." (segundo botão de opção) -> Terminar
Espero que isto ajude...!
fonte