Pytanie w sprawie java, package, linux, command-line – tworzenie pakietu java w linii poleceń

7

Chociaż jest to prawdopodobnie zalecane jedno z zastosowań i IDE do kodowania zaawansowanych projektów java, osobiście wolę uruchamiać prawie całkowicie linię poleceń (używając gedit jako edytora tekstu). Więc proszę, nie mów mi „Po prostu używaj zaćmienia!” lub coś: P

Moje pytanie brzmi, jaką metodą tworzenia pakietu w Javie jest polecenie.

Nie mówię o pakowaniu aplikacji, która działa w linii poleceń, mówię o utworzeniu pakietu w linii poleceń. Czy tworzę plik tekstowy? Czy tworzę katalog?

W podobny sposób, w jaki sposób łączy się z pokrewnymi bibliotekami i tubylcami bez użycia środowiska IDE?

Wiem, że jestem tu bardzo niezręczny, ale naprawdę wolę sterowanie, które można uruchomić w linii poleceń.

Nie, słoiki są dość łatwe: P Miałem na myśli rzeczywiste opakowanie (które, jak się okazuje, jest tylko katalogiem ... gossfunkel
„Tworzenie pakietu”? Czy masz na myśli „tworzenie JAR”? Jeśli tak, zacznij od dokumentacji:docs.oracle.com/javase/tutorial/deployment/jar/index.html. Oliver Charlesworth

Twoja odpowiedź

4   odpowiedź
1

więc prostym sposobem utworzenia Pakietu będzie powiedzenie com.organization.test w terminalu

mkdir -p com/organization/test
7

(2) wskaż pakiet w pliku java; (3) skompiluj go.

Na przykład, jeśli chcesz utworzyć pakietcom.mycompany.myproject, następnie musisz zacząć w katalogu podstawowym swojego projektu, a następnie:

(1) utwórz katalogcom/mycompany/myproject

(2) utwórz pliki java w tym katalogu, podającpackage com.mycompany.myproject w nich;

(3) skompiluj pliki, na przykład za pomocąjavac -cp . com/mycompany/myproject/*.java

Możesz podać inny katalog wyjściowy, aby nie mieszać źródeł i skompilowanych klas.

Jeśli chcesz użyć zewnętrznych bibliotek (plików .jar) do kompilacji, musisz użyć-cp lub-classpath parametr wiersza polecenia dojavac narzędzie do ich określenia, np.

javac -cp .:some_library.jar:lib/another_library.java com/mycompany/myproject/*.java

Dobrym pomysłem może być umieszczenie wszystkich zewnętrznych bibliotek w jednym miejscu, np.lib podkatalog głównego katalogu projektu. A tak przy okazji, powyższejavac polecenie zakłada środowisko uniksopodobne. Jeśli używasz systemu Windows, musisz go użyć; do separacji ścieżek.

2

używając narzędzia do pakowania, takiego jakMrówka lubMaven. Maven jest szczególnie przydatny, ponieważ jest to narzędzie wyższego poziomu, które już wie, jak budować różne typy projektów: aplikacje wiersza poleceń, aplikacje internetowe, biblioteki itp. Obsługuje również zależności bibliotek, pobierając je z repozytoriów.

@AleksG - Maven nadal byłby pomocny, ponieważ OP musi „łączyć się z powiązanymi bibliotekami”. David Harkness
Nie sądzę, żeby to było po OP. Mówi o pakietach w kodzie źródłowym Java, a nie o tym, jak spakować ostateczną aplikację. Aleks G
5

com.mycompany.util odpowiada katalogowicom/mycompany/util.

Podczas uruchamiania i kompilowania itp. Bieżący katalog roboczy powinien znajdować się tam, gdzie znajduje się ten główny katalog.

Aby dołączyć biblioteki, dołącz je do ścieżki klas podczas kompilowania i uruchamiania. Na przykład utwórz katalog projektumyproject i pod tym masz swoje pliki java i pakiety podmyproject/src/ i bibliotek, z których korzystaszmyproject/libs/ Następnie, gdy bieżący katalog roboczy jestmyproject wykonaćjava -cp .:libs/*.jar lub to samo zjavac.

Ale proponuję, abyś spojrzał na mrówkę lub maven.

to prawda ... pakiety są niczym innym jak zorganizowanymi strukturami katalogów Suraj Chandran

Powiązane pytania