Ich versuche, eine Abhängigkeit mit Bower mithilfe einer URL zu installieren. Ab Bower-Dokumentation:
Bower bietet verschiedene Möglichkeiten, Pakete zu installieren:
# Using the dependencies listed in the current directory's bower.json
bower install
# Using a local or remote package
bower install <package>
# Using a specific version of a package
bower install <package>#<version>
# Using a different name and a specific version of a package
bower install <name>=<package>#<version>
Wo <package>
kann eine der folgenden sein:
git://github.com/someone/some-package.git
. Kann öffentlich oder privat sein.someone/some-package
(standardmäßig GitHub).Dann heißt es jedoch, dass alle Typen mit Ausnahme der URL die Angabe einer Version zulassen.
Wie gebe ich eine Version für eine heruntergeladene URL-Abhängigkeit an?
Verwenden Sie einen Git-Endpunkt anstelle eines Paketnamens:
bower install https://github.com/jquery/jquery.git#2.0.3
Wenn Sie die Datei bower.json verwenden, um Ihre Abhängigkeiten anzugeben:
{
"dependencies": {
...
"photo-swipe": "[email protected]:dimsemenov/PhotoSwipe.git#v3.0.x",
#bower 1.4 (tested with that version) can read repositorios with uri format
"photo-swipe": "git://github.com/dimsemenov/PhotoSwipe.git#v3.0.x",
}
}
Denken Sie daran, dass bower auch nach freigegebenen Versionen und Tags sucht, sodass Sie auf fast alles verweisen und grundlegende Abfragemuster wie im vorherigen Beispiel interpretieren können. das letzte kleinere Update der Version 3.0 abruft (getestet ab Bower 1.3.5)
pdate, wie in der Beschreibung der Frage auch erwähnt, nur eine URL zu verwenden und kein Github-Repository zu erwähnen.
Ein weiteres Beispiel ist die Ausführung dieses Befehls unter Verwendung der gewünschten URL wie folgt:
bower install gmap3MarkerWithLabel=http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.0/src/markerwithlabel.js -S
dieser Befehl lädt Ihre js-Bibliothek herunter und fügt {Ihren Zielpfad} /gmap3MarkerWithLabel/index.js ein. Anschließend erstellt er automatisch einen Eintrag in Ihrer bower.json-Datei mit dem Namen gmap3MarkerWithLabel: "..." Danach können Sie nur noch bower update gmap3MarkerWithLabel
wenn benötigt.
Lustige Sache, wenn Sie den Prozess backwars (manuell den Eintrag in bower.json hinzufügen, dann bower install entryName), funktioniert es nicht, Sie erhalten eine
bower ENOTFOUND-Paket gmapV3MarkerWithLabel nicht gefunden
Beachten Sie bei der Verwendung von github, dass Sie auch ein bestimmtes Commit (z. B. einen von Ihnen erstellten und aktualisierten Fork) als Ziel festlegen können, indem Sie den Commit-Hash an das Ende der Klon-URL anhängen. Zum Beispiel:
"dependencies": {
"example": "https://github.com/owner_name/repo_name.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}
Oder Sie können ein Git-Commit in Ihrem lokalen Dateisystem als Ziel festlegen, wenn Sie das Git-Verzeichnis Ihres Projekts verwenden (unter Windows: Beachten Sie die Schrägstriche):
"dependencies": {
"example": "file://C:/Projects/my-project/.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}
Dies ist eine Möglichkeit, Bibliothekscode zu testen, den Sie lokal festgeschrieben, aber noch nicht auf das Repo übertragen haben.
Verwenden Sie Folgendes:
bower install --save git://github.com/USER/REPOS_NAME.git
Mehr hier: http://bower.io/#getting-started
Nur ein Update.
Wenn es sich um ein Github-Repository handelt, ist es ausreichend, nur eine Github-Kurzform zu verwenden, wenn Sie die Version natürlich nicht stören.
$ bower install desandro/masonry
Die Angabe des Uri-Endpunkts hat bei mir funktioniert , bower 1.3.9
"dependencies": {
"jquery.cookie": "latest",
"everestjs": "http://www.everestjs.net/static/st.v2.js"
}
Laufen bower install
Habe ich folgende Ausgabe erhalten:
bower new version for http://www.everestjs.net/static/st.v2.js#*
bower resolve http://www.everestjs.net/static/st.v2.js#*
bower download http://www.everestjs.net/static/st.v2.js
Sie können auch versuchen, die Laube zu aktualisieren
npm update -g bower
Laut Dokumentation : werden die folgenden Arten von URLs unterstützt:
http://example.com/script.js
http://example.com/style.css
http://example.com/package.Zip (contents will be extracted)
http://example.com/package.tar (contents will be extracted)
Hier ist eine praktische Kurzanleitung zum Installieren eines bestimmten Tags oder zum Festschreiben von GitHub über bower.json
.
{
"dependencies": {
"your-library-name": "<GITHUB-USERNAME>/<REPOSITORY-NAME>#<TAG-OR-COMMIT>"
}
}
Zum Beispiel:
{
"dependencies": {
"custom-jquery": "jquery/jquery#2.0.3"
}
}
Ich glaube, dass die Angabe der Version nur für Git-Endpunkte funktioniert. Und nicht für Ordner/Zip. Als ob Sie auf eine js-Datei/einen Ordner/eine Zip-Datei zeigen, haben Sie bereits package nd version angegeben (mit Ausnahme von js in der Tat). Weil ein Paket die Datei bower.json mit der Version enthält. Die Angabe einer Version in 'bower install' ist sinnvoll, wenn Sie bower auf ein Repository verweisen, das viele Versionen eines Pakets enthalten kann. Es kann nur Schwachsinn sein, denke ich.
Versuchen bower install git://github.com/urin/jquery.balloon.js.git#1.0.3 --save
wo 1.0.3
ist die Tag-Nummer, die Sie erhalten, wenn Sie das Tag unter Releases lesen. Auch für URL ersetzen durch git://
, damit das System eine Verbindung herstellen kann.
Installiert das Paket von git und speichert es in Ihrem bower.json-Abhängigkeitsblock.
bower register package-name git-endpoint#version
install package-name --save
(--save
speichert die Paketnamenversion in der Datei bower.json im Abhängigkeitsblock.