Zoeken…


Voeg een lokale JAR-bestandsafhankelijkheid toe

Enkele JAR

Soms heb je een lokaal JAR-bestand dat je moet toevoegen als afhankelijkheid van je Gradle-build. Hier is hoe je dit kunt doen:

dependencies {
    compile files('path/local_dependency.jar')
}

Waar path een local_dependency.jar op uw bestandssysteem is en local_dependency.jar de naam is van uw lokale JAR-bestand. Het path kan relatief zijn ten opzichte van het buildbestand.

Directory van JAR's

Het is ook mogelijk om een map met potten toe te voegen om te compileren. Dit kan als volgt:

dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
}

Waar libs de map met de potten zou zijn en *.jar het filter zou zijn van de bestanden die moeten worden opgenomen.

Directory van JAR's als repository

Als u alleen potten in een repository wilt opzoeken in plaats van ze direct als afhankelijkheid van hun pad toe te voegen, kunt u een flatDir-repository gebruiken.

repositories {
    flatDir {
        dirs 'libs'
    }
}

Zoekt naar potten in de map libs en de onderliggende mappen.

Voeg een afhankelijkheid toe

Afhankelijkheden in Gradle volgen hetzelfde formaat als Maven . Afhankelijkheden zijn als volgt gestructureerd:

group:name:version

Hier is een voorbeeld:

'org.springframework:spring-core:4.3.1.RELEASE'

Voeg deze regel toe aan uw dependency in het Gradle-buildbestand om toe te voegen als een compilatie-afhankelijkheid:

compile 'org.springframework:spring-core:4.3.1.RELEASE'

Een alternatieve syntaxis voor deze naam geeft elk onderdeel van de afhankelijkheid expliciet een naam:

compile group: 'org.springframework', name: 'spring-core', version: '4.3.1.RELEASE'

Dit voegt een afhankelijkheid toe tijdens het compileren.

U kunt ook alleen afhankelijkheden voor tests toevoegen. Hier is een voorbeeld:

testCompile group: 'junit', name: 'junit', version: '4.+'

Hang van een ander gradleproject af

In het geval van een gradle-build voor meerdere projecten, moet u soms afhankelijk zijn van een ander project in uw build. Om dit te bereiken, voert u het volgende in de afhankelijkheden van uw project in:

dependencies {
    compile project(':OtherProject')
}

Waar ':OtherProject' het gradle-pad voor het project is, waarnaar wordt verwezen vanuit de hoofdmap van de mapstructuur.

Om ':OtherProject' beschikbaar te maken in de context van het bestand build.gradle , voegt u dit toe aan de overeenkomstige settings.gradle

include ':Dependency'
project(':Dependency').projectDir = new File('/path/to/dependency')

Voor een meer gedetailleerde uitleg kunt u officiële documentatie Gradle's verwijzen hier .

Lijst afhankelijkheden

Door de dependencies taak aan te roepen, kunt u de afhankelijkheden van het rootproject zien:

gradle dependencies

De resultaten zijn afhankelijkheidsgrafieken (rekening houdend met transitieve afhankelijkheden), uitgesplitst naar configuratie. Om de weergegeven configuraties te beperken, kunt u de optie --configuration passeren, gevolgd door een gekozen configuratie om te analyseren:

gradle dependencies --configuration compile

Gebruik <subproject>:dependencies taak om afhankelijkheden van een subproject weer te geven. Om bijvoorbeeld afhankelijkheden weer te geven van een subproject met de naam api :

gradle api:dependencies

Repositories toevoegen

Je moet Gradle naar de locatie van je plug-ins wijzen, zodat Gradle ze kan vinden. Doe dit door een repositories { ... } te voegen aan je build.gradle .

Hier is een voorbeeld van het toevoegen van drie repositories, JCenter , Maven Repository en een aangepaste repository die afhankelijkheden in Maven-stijl biedt.

repositories {
  // Adding these two repositories via method calls is made possible by Gradle's Java plugin
  jcenter()
  mavenCentral()

  maven { url "http://repository.of/dependency" }
}

.Aar-bestand toevoegen aan Android-project met behulp van gradle

  1. Navigeer naar de app module van het project en maak de libs directory aan.
  2. Plaats uw .aar bestand daar. Bijvoorbeeld myLib.aar .
  3. Voeg de onderstaande code toe aan het android blok van het build.gradle bestand op app niveau.
  repositories {
        flatDir {
            dirs 'libs'
        }
    }

Op deze manier definieerde u een nieuwe extra repository die libs map libs van de app module.

  1. Voeg de onderstaande code toe aan het dependencies of het build.gradle bestand:
compile(name:'myLib', ext:'aar')


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow