2
votes

Comment installer le plugin Splunk Mint Gradle?

Selon la documentation Splunk MINT ( https: // docs. splunk.com/Documentation/MintAndroidSDK/5.2.x/DevGuide/Requirementsandinstallation ), vous devez télécharger manuellement l'artefact du plugin Gradle et l'inclure dans votre projet.

J'ai téléchargé et déployé avec succès cet artefact sur une instance locale de Artifactory, car il est déjà archivé dans un format maven repo.

Pour tester l'intégration, j'ai simplement créé un tout nouveau projet et ajouté / appliqué le plugin mint. À partir de là, la synchronisation Gradle échoue avec l'erreur suivante:

Caused by: java.lang.NoSuchFieldError: javacTask
 at com.splunk.mint.gradle.android.plugin.utils.VariantUtilsKt.getJavaTask(VariantUtils.kt:13)
 at com.splunk.mint.gradle.android.plugin.api.AspectJTransform.setupVariant(AspectJTransform.kt:81)
 at com.splunk.mint.gradle.android.plugin.api.AspectJTransform$prepareProject$1.execute(AspectJTransform.kt:57)
 at com.splunk.mint.gradle.android.plugin.api.AspectJTransform$prepareProject$1.execute(AspectJTransform.kt:43)
 at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1$1.run(DefaultListenerBuildOperationDecorator.java:150)
 at org.gradle.configuration.internal.DefaultUserCodeApplicationContext.reapply(DefaultUserCodeApplicationContext.java:58)
 at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1.run(DefaultListenerBuildOperationDecorator.java:147)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
 at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
 at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction.execute(DefaultListenerBuildOperationDecorator.java:144)
 at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:91)
 at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:80)
 at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:42)
 at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:230)
 at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:149)
 at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:58)
 ... 126 more

Environnement:

  • Android Studio 3.4
  • Gradle 5.2
  • Plugin Android Gradle 3.4.0
  • Plugin Splunk Mint 5.2.5

Je soupçonne que l'équipe Splunk a besoin de mettre à jour ce plugin pour prendre en charge les nouvelles versions de Gradle. Malheureusement, je ne parviens pas à revenir à une version 4.x précédente, car elle est inférieure à la version minimale prise en charge pour Android Studio.


0 commentaires

3 Réponses :



0
votes

Afficher build.gradle. J'ai trouvé que 2.5.2 fonctionne mais vous devez ajouter au module d'application build.gradle au lieu du module bibliothèque ... Si vous ajoutez au module de bibliothèque, cela ne fonctionnera pas. La suppression du plugin fonctionne également pour moi.

J'ai aussi trouvé une solution pour utiliser Splunk sur les bibliothèques. En gros, vous devez utiliser les parties qui importent le fichier depuis uri dans toutes vos bibliothèques. Pour ce faire, j'ai mis le 'mint-plugin-repo-5.2.5' dans ma bibliothèque commune puis, dans mon projet d'application gradle, je suis allé dans le répertoire parent '../' jusqu'à ce que je sois dans le répertoire du référentiel, puis je mettre le chemin relatif vers le fichier 'mint-plugin-repo-5.2.5' dans ma bibliothèque commune (donc, par exemple: '../../MyLibrary/lib-module/mint-plugin-repo-5.2.5) .

En faisant cela avec NO PLUGIN, MultiDex enable et API min / target dans mon manifeste, je l'ai fait fonctionner dans toutes les parties de mon projet (1 module app + 2 bibliothèques de modules)

J'espère que cela vous sera utile


0 commentaires

5
votes

Heureusement, j'ai fait fonctionner la version 5.2.5 - j'étais sur le point d'abandonner et d'utiliser un autre outil de rapport d'incident.

Voici comment je l'ai fait.

Étape 1 : Téléchargez le référentiel de plugins MINT pour Gradle ( mint-android-repo-5.2.5.zip ).

Étape 2 : extrayez le fichier zip dans le dossier "app" de votre projet Android.

Étape 3 : modifiez le fichier de construction Gradle de votre application (app / build.gradle) comme suit:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "org.example"
        minSdkVersion 24
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    ...
}

buildscript {
    repositories {
        maven {
            url uri('mint-plugin-repo-5.2.5')
        }
        mavenCentral()
    }
    dependencies {
        classpath 'com.splunk:mint-gradle-android-plugin:5.2.5'
    }
}

repositories {
    maven {
        url uri('mint-plugin-repo-5.2.5')
    }
}

dependencies {
    ...
    implementation 'com.splunk:mint-android-sdk:5.2.5'
}

Merci pour les autres réponses qui ont aidé.

J'ai regardé la vidéo suggérée (les informations d'installation importantes commencent à 3 : 21) ... J'ai aussi lu leur documentation Android . .. et enfin la solution était de supprimer leur plugin!

Comme je suis nouveau sur Mint / Splunk (au moins au cours de cette décennie), je ne suis pas sûr des impacts de cela, mais j'ai testé et un crash d'application est arrivé et est apparu dans mon tableau de bord.


2 commentaires

travaux! Remarque: la section buildscript est redondante et peut être supprimée


@rocknow merci pour les informations mises à jour! Heureux ma réponse a été utile