根据Splunk MINT文档(https://docs.splunk.com/Documentation/MintAndroidSDK/5.2.x/DevGuide/Requirementsandinstallation),您必须手动下载Gradle插件工件并将其包含在您的项目中。
我已经成功地将该工件下载并部署到了Artifactory的本地实例,因为它已经以maven repo格式进行了归档。
为了测试集成,我只是创建了一个全新的项目并添加/应用了mint插件。从这里开始,Gradle同步失败,并出现以下错误:
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
我怀疑Splunk团队需要更新此插件以支持较新版本的Gradle。不幸的是,我无法降级到4.x以前的版本,因为该版本低于Android Studio支持的最低版本。
答案 0 :(得分:4)
非常感谢我能工作5.2.5-即将放弃并使用另一个崩溃报告工具。
这就是我的方法。
步骤1 :为Gradle(mint-android-repo-5.2.5.zip)下载MINT插件存储库。
第2步:将zip文件解压缩到Android项目的“ app”文件夹中
第3步:如下修改您的应用Gradle构建文件(app / build.gradle):
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'
}
感谢其他有帮助的答案。
我看了建议的video(重要的安装信息从3:21开始)...我也读了their Android documentation ...,最后的解决方法是删除他们的插件!
由于我是Mint / Splunk的新手(至少在此十年中),所以我不确定这样做的影响,但我进行了测试,并出现了应用程序崩溃并出现在仪表板中。
答案 1 :(得分:0)
我从链接http://download.splunk.com/misc/mint/mint-android-repo-5.1.0.zip中获得了较旧的版本 并用于检查其安装https://www.youtube.com/watch?v=vecdk2HUASw,至少它可以构建,所以我认为5.2版本有问题
答案 2 :(得分:0)
显示build.gradle。 我发现2.5.2可以工作,但是您必须添加到build.gradle应用模块而不是库模块中。 如果添加到库模块,它将无法正常工作。同样删除插件对我也有用。
我找到了一种在库中也使用Splunk的解决方案。基本上,您需要使用所有库中从uri导入文件的部分。为此,我将“ mint-plugin-repo-5.2.5”放入我的公共库中,然后在我的应用程序项目gradle中,转到父目录“ ../”,直到进入存储库目录,然后我将相对路径放置到我的公共库中的“ mint-plugin-repo-5.2.5”文件中(例如:“ ../../ MyLibrary / lib-module / mint-plugin-repo-5.2.5”)
在清单中没有PLUGIN,MultiDex enable和min / target API的情况下,我使它可以在项目的所有部分(1个模块应用程序+ 2个模块库)中正常工作
希望这很有帮助