Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dieses Feature ist nur in .NET 9+ verfügbar.
<AndroidMavenLibrary> ermöglicht die Angabe eines Maven-Artefakts, das automatisch heruntergeladen und einem .NET für Android-Bindungsprojekt hinzugefügt wird. Dies kann hilfreich sein, um die Wartung von .NET für Android-Bindungen für Artefakte zu vereinfachen, die in Maven gehostet werden.
Spezifikation
Ein einfaches Beispiel für <AndroidMavenLibrary> sieht wie folgt aus:
<!-- Include format is {GroupId}:{ArtifactId} -->
<ItemGroup>
<AndroidMavenLibrary Include="com.squareup.okhttp3:okhttp" Version="4.9.3" />
</ItemGroup>
Dies wird zur Erstellungszeit mehrere Dinge tun:
- Laden Sie das Java-Artefakt mit Gruppen-ID, Artefakt-ID
com.squareup.okhttp3okhttpund Version4.9.3von Maven Central in einen lokalen Cache herunter (falls noch nicht zwischengespeichert). - Fügen Sie das zwischengespeicherte Paket dem Build der .NET für Android-Bindungen hinzu
<AndroidLibrary>. - Laden Sie die POM-Datei des Java-Artefaktes (und alle erforderlichen übergeordneten/importierten POM-Dateien) herunter, um die Java-Abhängigkeitsüberprüfung zu aktivieren. Um diese Funktion abzuwählen, fügen Sie dem
<AndroidMavenLibrary>-ElementVerifyDependencies="false"hinzu.
Beachten Sie, dass nur das angeforderte Java-Artefakt dem .NET-Build für Android-Bindungen hinzugefügt wird. Alle Artefaktabhängigkeiten werden nicht hinzugefügt. Wenn das angeforderte Artefakt Abhängigkeiten aufweist, müssen sie einzeln erfüllt werden.
Optionen
<AndroidMavenLibrary> verwendet standardmäßig Maven Central, sollte jedoch auch jedes Maven-Repository unterstützen, das keine Authentifizierung erfordert. Dies kann mit dem Repository Attribut gesteuert werden.
Unterstützte Werte sind Central (Standard) Googleoder eine URL zu einem anderen Maven-Repository.
<ItemGroup>
<AndroidMavenLibrary
Include="androidx.core:core"
Version="1.9.0"
Repository="Google" />
</ItemGroup>
<ItemGroup>
<AndroidMavenLibrary
Include="com.github.chrisbanes:PhotoView"
Version="2.3.0"
Repository="https://repository.mulesoft.org/nexus/content/repositories/public" />
</ItemGroup>
Darüber hinaus werden alle Attribute, die auf das <AndroidMavenLibrary> Element angewendet werden, intern in das <AndroidLibrary> Element kopiert.
Daher können Attribute wie Bind und Pack zum Steuern des Bindungsprozesses verwendet werden. (Beide Standardeinstellungen sind true.)
<ItemGroup>
<AndroidMavenLibrary
Include="androidx.core:core"
Version="1.9.0"
Repository="Google"
Bind="false"
Pack="false" />
</ItemGroup>