Czytałem samouczki Java w Sun dla plików JAR, ale nadal nie mogę znaleźć rozwiązania mojego problemu. Muszę użyć klasy z pliku jar o nazwie jtwitter.jar, pobrałem plik i próbowałem go uruchomić (wczoraj dowiedziałem się, że pliki .jar można uruchomić, klikając je dwukrotnie), a Vista wyświetliła mi komunikat o błędzie „ Nie udało się załadować atrybutu manifestu klasy głównej z [ścieżka] /jtwitter.jar ”.
Facet, który zakodował plik .jar, chce, żebym go zaimportował, ale gdzie mam przechowywać plik .jar, aby zaimportować go do mojego kodu? Próbowałem umieścić zarówno plik .jar, jak i mój plik .java w tym samym katalogu, ale nie zadziałało.
Plik, dla którego próbuję pracować, znajduje się tutaj: http://www.winterwell.com/software/jtwitter.php
Używam JCreator LE.
Odpowiedzi:
Nie każdy plik jar jest wykonywalny.
Teraz musisz zaimportować klasy, które znajdują się pod jar, do pliku java. Na przykład,
Jeśli pracujesz na IDE, powinieneś zapoznać się z jego dokumentacją. Lub przynajmniej określ, którego z nich używasz tutaj w tym wątku. To z pewnością umożliwiłoby nam dalszą pomoc.
A jeśli nie używasz żadnego IDE, spójrz na opcję javac -cp . Jednak znacznie lepszym pomysłem jest spakowanie programu w
jar
pliku i uwzględnienie w nim wszystkich wymaganych plikówjar
. Następnie, aby wykonać swojejar
ulubionepowinieneś mieć
META-INF/MANIFEST.MF
plik w swoimjar
. Zobacz tutaj , aby uzyskać instrukcje.źródło
import
- po prostu unika się konieczności wpisywania w pełni kwalifikowanej nazwy klasy, niezależnie od tego, kto kiedykolwiek ta klasa jest używana, pozwalając tylko na prostą nazwę klasy (SAXException
) - coś w rodzaju importu przestrzeni nazwPowiedzmy, że musimy użyć klasy
Classname
zawartej w pliku jarorg.example.jar
A twoje źródło znajduje się w pliku
mysource.java
takim jak ten:Najpierw, jak widzisz, w swoim kodzie musisz zaimportować klasy. Aby to zrobić, potrzebujesz
import org.example.Classname;
Po drugie, kiedy kompilujesz źródło, musisz odwołać się do pliku jar.
Zwróć uwagę na różnicę w używaniu
:
i;
podczas kompilacjiJeśli jesteś w systemie operacyjnym typu unix:
Jeśli jesteś pod oknami:
Następnie otrzymasz plik kodu bajtowego
mysource.class
Teraz możesz uruchomić to:
Jeśli jesteś w systemie operacyjnym typu unix:
Jeśli jesteś pod oknami:
źródło
.
odorg.example.jar
.*PATH
zmiennych: pliki .jar muszą mieć indywidualne nazwy .Musisz dodać plik jar w ścieżce klas. Aby skompilować klasę java:
Aby uruchomić kod (pod warunkiem, że MyClass zawiera główną metodę):
Możesz mieć plik jar w dowolnym miejscu. Powyższe działa, jeśli plik jar znajduje się w tym samym katalogu, co plik java.
źródło
Musisz umieścić plik .jar w swojej ścieżce klas podczas kompilowania / uruchamiania kodu. Następnie wystarczy użyć standardowego importu klas z pliku .jar.
źródło
Jak mówi workmad3, plik jar musi znajdować się w ścieżce klas. Jeśli kompilujesz z wiersza poleceń, będzie to oznaczać użycie flagi -classpath. (Unikaj zmiennej środowiskowej CLASSPATH; IMO to uciążliwe).
Jeśli używasz IDE, daj nam znać, które z nich, a pomożemy Ci w wykonaniu czynności specyficznych dla tego IDE.
źródło