Gibt es einen Paketmanager für Java wie easy_install für Python?
Ich suche nach einer Lösung, die über die Befehlszeile und nicht über eine IDE verwendet werden kann.
java
package-managers
systempuntoout
quelle
quelle
apt install maven
oderapt install gradle
Antworten:
Maven bietet ein Abhängigkeitsmanagement basierend auf Remote- Repositorys (wie dem zentralen Repo ), die durchsucht und durchsucht werden können .
Maven Ant-Aufgaben (im Ruhestand) verwenden Mavens Repositorys, um das Abhängigkeitsmanagement und mehr für Ant-Builds bereitzustellen.
Ant Ivy ist eine weitere Alternative zu Maven Ant Tasks.
MOP ist ein weiteres Befehlszeilenprogramm, das das Repository und die Abhängigkeiten von Maven nutzt.
quelle
Edit 2017-04-27: Ich war enttäuscht über den Mangel an Vorwärtsdynamik für jpm4j und den Mangel an Community-zentrierter Entwicklung. Also habe ich ein neues Tool namens jrun erfunden . Ich lade alle ein, es auszuprobieren. Es hat einen engeren Umfang als Tools wie Pythons
pip
, aber Sie können Java-Code aus Remote-Maven-Repositorys auf benutzerfreundliche Weise ausführen.Schauen Sie sich JPM4J an . Es ist ein Projekt von Peter Kriens (von BND Ruhm). Er hat es letztes Jahr zum ersten Mal vorgeschlagen , und zum Zeitpunkt dieses Schreibens gibt es es schon seit einigen Monaten und es sieht ziemlich beeindruckend aus.
Es wurde von Node's npm inspiriert und wie dieses Tool ist die Installation ein Kinderspiel:
OS X:
local $ curl http://www.jpm4j.org/install/local | sh global $ curl http://www.jpm4j.org/install/global | sudo sh
Linux:
curl http://www.jpm4j.org/install/script | sh
Und Windows hat natürlich ein klickendes Installationsprogramm.
Dann installieren Sie Dinge ähnlich wie andere Befehlszeilen-Paketmanager-Tools. Z.B:
Der Installationsbefehl bearbeitet Maven-Koordinaten. Grundsätzlich benötigt die JAR nur einen
JPM-Command
Eintrag in ihrem Manifest undjpm
weiß, wie ihre Hauptklasse als ausführbare Befehlszeilendatei verfügbar gemacht wird.Persönlich würde ich wirklich gerne sehen, wie die Java-Community hinter einer solchen Anstrengung steckt. Ein wirklich solider Java-Paketmanager ist Jahre überfällig!
quelle
jrun
.jrun
davon aus, dass die Anwendung einemain()
Methode hat?jrun
Endpunkts angeben . Wenn Sie die Hauptklasse weglassen, wird dasMain-Class
im JAR-Manifest des Artefakts definierte verwendet.Efeu von Apache ist das Nächste, von dem ich weiß.
quelle