Jáva

Úložiště Gradle

Úložiště Gradle
Gradle hledá externí závislosti v úložištích. Úložiště Gradle je organizováno pomocí skupiny, názvu a verze. Gradle je kompatibilní s různými formáty úložišť, jako jsou Maven a Ivy.

Pochopení správy závislostí v Gradle

Úložiště se v Gradle používají pro správu závislostí. Závislosti Gradle mají dvě složky: závislosti a publikace projektu.

Když stavíte projekt na Gradle, budete pravděpodobně potřebovat knihovny od jiných vývojářů. Předpokládejme, že potřebujete knihovnu Apache Commons Lang pro speciální manipulaci s řetězci. Aby váš kód fungoval, potřebujete ho ve své třídě. A Apache Commons Lang možná bude potřebovat další knihovny, o kterých nevíte. Gradle vám umožňuje určit konkrétní závislost, kterou váš projekt potřebuje, a přejde do zadaného úložiště, jako je Maven nebo Ivy, a zjistit všechny související závislosti a stáhnout soubory a automaticky je nastavit.

Gradle má také možnost publikovat vaše artefakty. Můžete se rozhodnout, co pro váš konkrétní případ znamená publikace. Můžete jej publikovat místně nebo publikovat do úložiště Maven nebo Ivy.

Příklad úložiště Gradle

Předpokládejme, že chceme použít třídu StringUtils z knihovny Apache Commons Lang. Postavme takového ředitele:

Ahoj světe
| - sestavení.gradle
'- src
| - hlavní
'- java
'-- Ahoj světe
'-- Ahoj světe.Jáva

Ve helloworldu.java, můžete dát následující kód:

import org.apache.Commons.lang3.StringUtils;
veřejná třída helloworld
public static void main (String [] args)
String greetings = "Ahoj světe!";
Systém.ven.println (pozdravy);
Systém.ven.println (StringUtils.swapCase (pozdravy));

A v sestavě.soubor gradle můžete vložit následující:

použít plugin: 'java'
verze = '1.0 '
repozitáře
mavenCentral ()

závislosti
kompilační skupina: „org.apache.commons ', name:' commons-lang3 ', verze:' 3.7 '

sklenice
z konfigurací.kompilovat.sbírat zipTree it

Pojďme diskutovat o tom, co se děje ve výše uvedeném skriptu sestavení. Říká společnosti Gradle, aby hledala v úložišti Maven Commons-lang3 verze 3.7. Také říká společnosti Gradle, aby zabalila závislosti do souboru jar. Pokud odeberete z konfigurací.kompilovat.sbírat řádek zipTree it, pak budete muset při spuštění programu zahrnout externí závislosti do cesty ke třídě.

Nyní z kořenové složky můžete spustit sestavení pomocí příkazu

$ gradle jar
Měli byste vidět takové výsledky:
$ gradle jar
Stáhněte si https: // repo.maven.apache.org / maven2 / org / apache / commons / commons-lang3 / 3.7 /
commons-lang3-3.7.pom
Stáhněte si https: // repo.maven.apache.org / maven2 / org / apache / commons / commons-parent / 42 /
commons-parent-42.pom
Stáhněte si https: // repo.Maven.apache.org / maven2 / org / apache / commons / commons-lang3 / 3.7 /
commons-lang3-3.7.sklenice
BUILD ÚSPĚŠNÝ za 6 s
2 proveditelné úkoly: 1 provedený, 1 aktuální

Sestavení můžete spustit takto:

$ java -cp build / libs / helloworld-1.0.jar helloworld
Ahoj světe!
Ahoj světe!

Pokud jste do svého sestavení nezahrnuli závislosti, pak by třídy StringUtils nebyly zahrnuty do vašeho helloworld-1.0.soubor jar. A vy byste dostali takovou chybu:

$ java -cp build / libs / helloworld-1.0.jar helloworld
Ahoj světe!
Výjimka ve vlákně „main“ java.jazyk.NoClassDefFoundError: org / apache / commons / lang3 /
StringUtils na helloworld.hlavní (helloworld.java: 11)
Způsobeno: java.jazyk.ClassNotFoundException: org.apache.Commons.lang3.StringUtils
na java.síť.URLClassLoader.findClass (URLClassLoader.java: 381)
na java.jazyk.ClassLoader.loadClass (ClassLoader.java: 424)
na slunci.různé.Spouštěč $ AppClassLoader.loadClass (spouštěč.java: 331)
na java.jazyk.ClassLoader.loadClass (ClassLoader.java: 357)
… Ještě 1

Gradle vám usnadňuje zabalení závislostí do vašeho balíčku.

Závěr

Použití funkcí úložiště a závislostí Gradle může zjednodušit váš proces správy závislostí. Nemusíte vše ručně sledovat.

Další studie:

Gradle Dependency Management pro projekty Java

Hry Jak zobrazit počítadlo FPS v linuxových hrách
Jak zobrazit počítadlo FPS v linuxových hrách
Hraní na Linuxu získalo velký tlak, když společnost Valve v roce 2012 oznámila podporu systému Linux pro klienta Steam a jejich hry. Od té doby se mno...
Hry Jak stáhnout a přehrát Sid Meier's Civilization VI v systému Linux
Jak stáhnout a přehrát Sid Meier's Civilization VI v systému Linux
Úvod do hry Civilization 6 je moderní pojetí klasického konceptu představeného v sérii her Age of Empires. Myšlenka byla docela jednoduchá; začali bys...
Hry Jak nainstalovat a hrát Doom na Linuxu
Jak nainstalovat a hrát Doom na Linuxu
Úvod do Doom Série Doom vznikla v 90. letech po vydání původního Doomu. Byl to okamžitý hit a od té doby herní série získala řadu ocenění a původní Do...