W ten sposób utworzyłem plik JAR jar cf jar-file input-files
. Teraz próbuję go uruchomić. Uruchomienie go nie działa (nie znaleziono polecenia jre):
jre -cp app.jar MainClass
To też nie działa:
java -jar main.jar
(Nie udało się załadować atrybutu manifestu klasy głównej z pliku main.jar).
Ja też się o tym dowiedziałem
Aby uruchomić aplikację spakowaną jako plik JAR (wersja 1.2 - wymaga nagłówka manifestu klasy głównej)
Co to jest „nagłówek manifestu klasy głównej”? Jak go stworzyć i gdzie go umieścić?
Main-Class: MainClass
a następnie utworzyłem plik .jar za pomocą polecenia, które podałeś. Potem mogłem uruchomić mój programjava -jar main.jar
.jar cfe app.jar MainClass *.class
Uwaga: -e zostało dodane w JDK 6.ustaw ścieżkę klasy i kompiluj
utwórz manifest.txt
utwórz yourApp.jar
uruchom yourApp.jar
źródło
Możesz biegać z:
java -cp .;app.jar package.MainClass
U mnie działa, jeśli w pliku JAR nie ma manifestu.
źródło
Otrzymałem ten błąd, a to dlatego, że miałem argumenty w złej kolejności:
POPRAWNY
java maui.main.Examples tagging -jar maui-1.0.jar
ŹLE
java -jar maui-1.0.jar maui.main.Examples tagging
źródło
Najłatwiejszym sposobem upewnienia się, że poprawnie utworzyłeś uruchamialny plik JAR, z odpowiednim plikiem manifestu, jest użycie Eclipse do zbudowania go za Ciebie. W swoim projekcie Eclipse po prostu wybierasz z menu Plik / Eksportuj i postępujesz zgodnie z instrukcjami.
W ten sposób możesz być pewien, że plik JAR jest poprawny i będziesz wiedział, aby szukać gdzie indziej, jeśli nadal występuje problem. Proces jest szczegółowo opisany w FAQ Jak utworzyć wykonywalny plik JAR dla samodzielnego programu SWT? .
źródło
Export
Eclipse IDE.Próbować
java -cp .:mail-1.4.1.jar JavaxMailHTML
nie ma potrzeby posiadania
manifest
pliku.źródło
Odkryłem, że mam również ten błąd w NetBeans. Mam nadzieję, że poniższe informacje są pomocne.
To był problem, który otrzymałem, ponieważ miałem inne programy „testowe”, których używałem w NetBeans i musiałem upewnić się, że klasa główna w części Run konfiguracji projektu jest ustawiona poprawnie.
wiele błogosławieństw, John P.
źródło
Otrzymałem ten sam błąd, gdy uruchomiłem:
jar cvfm test.jar Test.class Manifest.txt
Rozwiązaniem było to:
jar cvfm test.jar Manifest.txt Test.class
Mój manifest ma punkt wejścia podany w dokumentach Oracle (upewnij się, że na końcu pliku znajduje się znak nowego wiersza):
Main-Class: Test
źródło
Miałem ten sam problem. To polecenie uniksowe nie może znaleźć głównej klasy. Dzieje się tak, ponieważ wersje JDK w czasie wykonywania i kompilacji są różne. Po zmianie wersji kompilatora java przejdź przez zaćmienie jar. Poniższy link pomógł mi.
http://crunchify.com/exception-in-thread-main-java-lang-unsupportedclassversionerror-comcrunchifymain-unsupported-major-minor-version-51-0/
Spróbuj uruchomić jar utworzony po tym kroku, a następnie wykonaj go
źródło
Jeśli ścieżka do klasy jest w pełni określona w manifeście, być może potrzebujesz ostatniej wersji środowiska wykonawczego java. Mój problem został rozwiązany po ponownym zainstalowaniu JRE 8.
źródło
Jeśli używasz eclipse, spróbuj poniżej: 1. Kliknij prawym przyciskiem myszy projekt -> wybierz Eksportuj 2. Wybierz plik Runnable Jar w miejscu docelowym eksportu 3. Wprowadź nazwę słoika i wybierz opcję „Wymagany pakiet ...” (drugi przycisk opcji) -> Zakończ
Mam nadzieję że to pomoże...!
źródło