Pisałem prosty program przy użyciu aplikacji Java (nie aplikacji, która ma projekty, ale aplikacja w projekcie; .java ), która ma pojedynczą ramkę. Oba pliki to .java, więc nie mogę napisać manifestu wymaganego przez JAR.
MyApp.java zaczyna się jak klasy z pakietu import klasę następnie publiczną MyApp
i ma główną rolę, ale to wciąż .java plik! Piszę to w JDeveloper 11g, jeśli to pomaga.
Jakieś pomysły, jak zrobić JAR z tych plików?
Odpowiedzi:
Otwórz wiersz polecenia.
Przejdź do katalogu, w którym masz pliki .java
Utwórz kompilację katalogu
Uruchom kompilację java z wiersza poleceń
jeśli nie ma błędów, w katalogu budowania powinieneś mieć swoje drzewo klas
przejdź do katalogu kompilacji i wykonaj plik
Do dodawania przełączników wiersza poleceń manifestu check jar
źródło
jar cfe Main.jar Main *
(jestem jednak zdezorientowany, musiałem umieścić nazwę klasy głównej po nazwie pliku wyjściowego).Po prostu za pomocą wiersza poleceń:
Z pewnością IDE unikają używania terminala wiersza poleceń
źródło
.class
plik myApp. Tak byłojar -cf myJar.jar myApp.class
Ok, to jest rozwiązanie, które chciałbym znaleźć, zamiast tego tutaj je piszę:
Najpierw utwórz strukturę katalogów odpowiadającą pakietowi zdefiniowanemu dla pliku .java, jeśli jest to moja.super.application utwórz katalog „my”, w nim „super”, aw nim plik .java „App.java”
następnie z linii poleceń:
javac -cp /path/to/lib1.jar:/path/to/lib2.jar path/to/my/super/App.java
Zauważ, że powyższe będzie zawierało wiele bibliotek, jeśli w systemie Windows użyj "," do oddzielenia wielu plików, w przeciwnym razie w GNU / Linux użyj ":" Aby utworzyć plik jar
powyższe spowoduje utworzenie aplikacji z odpowiednim Manifestem wskazującym aplikację jako główną klasę.
Włączenie wymaganych bibliotek do pliku jar nie jest możliwe przy użyciu parametrów wiersza poleceń java lub jar.
Zamiast tego możesz:
nazwy file.reference znajdują się w pliku project.properties po dodaniu bibliotek do środowiska Netbeans IDE.
źródło
Często będziesz chciał określić manifest, na przykład:
Który brzmi: „utwórz pełny plik jarFilename manifestFilename”, a następnie pliki, które chcesz dołączyć. Pełne oznacza drukowanie wiadomości o tym, co robi.
Zauważ, że nazwa podanego pliku manifestu może być dowolna, ponieważ
jar
automatycznie zmieni nazwę i umieści go w odpowiednim katalogu w pliku jar.źródło
Można to zrobić bez terminala, bezpośrednio z IDE. Na przykład Netbeans.
źródło
Oto kolejny fantazyjny sposób na zrobienie tego:
Który pobierze wszystkie pliki .java (
ls | grep .java
) z twojego bieżącego katalogu i skompiluje je do .class (xargs -I {} javac {}
), a następnie utworzy plik jar z poprzednio skompilowanych klas (jar -cf myJar.jar *.class
).źródło
Być może najbardziej przyjaznym dla początkujących sposobem skompilowania pliku JAR z kodu Java jest użycie IDE (zintegrowane środowisko programistyczne; zasadniczo tylko przyjazne dla użytkownika oprogramowanie do programowania), takie jak Netbeans lub Eclipse.
Zawsze możesz to wszystko zrobić bardzo łatwo za pomocą wiersza poleceń. Przed wykonaniem polecenia, takiego jak to, upewnij się, że jesteś w tym samym katalogu, co pliki docelowe:
... zmieniając odpowiednio nazwy „YourApp” i „YourJar” na nazwy własne plików.
źródło