我刚开始在Android Studio中使用我的Android应用程序DeployGate,并且想要使用gradle plugin来上传我的新版本(我认为是这样,还是我误解了它? )。使用deployGate gradle插件构建Android Studio项目
我终于实现了我的项目建设取得成功,我修改的build.gradle(模块:APP):
apply plugin: 'deploygate'
apply plugin: 'com.android.application'
deploygate {
userName = "[myUsername]" //yes, I replaced it with my own
token = "[myAPIKey]" // also
apks {
release {
sourceFile = file("C:\\AndroidStudioProjects\\MyApp\\app\\app-release.apk")
}
debug {
sourceFile = file("C:\\AndroidStudioProjects\\MyApp\\app\\build\\outputs\\apk\\app-debug.apk")
//Below is optional
//message = "test upload2 sample"
//visibility = "public"
//distributionKey = "[distribution_key]"
//releaseNote = "release note sample"
}
}
}
android {
compileSdkVersion 23
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "bendaf.myapp"
minSdkVersion 18
targetSdkVersion 23
versionCode 13
versionName "1.2.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:23.0.0'
compile 'com.deploygate:sdk:3.1'
}
但是当我尝试在终端执行命令gradle uploadDeployGate
它最高审计机关构建失败。 (?我不是太有经验丰富的gradle,所以我在做是正确的)
我的堆栈跟踪是:
* Exception is:
org.gradle.api.GradleScriptException: A problem occurred evaluating project ':app'.
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54)
at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:190)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:39)
at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:26)
at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:521)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:82)
at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:31)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:129)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin [id 'com.android.application']
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:117)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$200(DefaultObjectConfigurationAction.java:36)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$3.run(DefaultObjectConfigurationAction.java:80)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:131)
at org.gradle.api.internal.project.AbstractPluginAware.apply(AbstractPluginAware.java:37)
at org.gradle.api.Project$apply$0.call(Unknown Source)
at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.groovy:34)
at org.gradle.api.Script$apply$0.callCurrent(Unknown Source)
at build_78pi66j0mnhjns6vp3krggobhd.run(C:\AndroidStudioProjects\VivagoDatatransmission\app\build.gradle:25)
at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52)
... 31 more
Caused by: org.gradle.tooling.BuildException: Gradle version 2.2 is required. Current version is 2.1. If using the gradle wrapper, try editing the distributionUrl in C:\An
droidStudioProjects\VivagoDatatransmission\gradle\wrapper\gradle-wrapper.properties to gradle-2.2-all.zip
at com.android.build.gradle.BasePlugin.checkGradleVersion(BasePlugin.groovy:436)
at com.android.build.gradle.BasePlugin.configureProject(BasePlugin.groovy:265)
at com.android.build.gradle.BasePlugin$_apply_closure1.doCall(BasePlugin.groovy:252)
at com.android.build.gradle.BasePlugin$_apply_closure1.doCall(BasePlugin.groovy)
at com.android.build.gradle.internal.profile.SpanRecorders$2.call(SpanRecorders.groovy:52)
at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:48)
at com.android.build.gradle.internal.profile.SpanRecorders.record(SpanRecorders.groovy:54)
at com.android.build.gradle.BasePlugin.apply(BasePlugin.groovy:251)
at com.android.build.gradle.AppPlugin.super$2$apply(AppPlugin.groovy)
at com.android.build.gradle.AppPlugin.apply(AppPlugin.groovy:66)
at com.android.build.gradle.AppPlugin.apply(AppPlugin.groovy)
at org.gradle.api.internal.plugins.DefaultPluginContainer.providePlugin(DefaultPluginContainer.java:188)
at org.gradle.api.internal.plugins.DefaultPluginContainer.addPluginInternal(DefaultPluginContainer.java:137)
at org.gradle.api.internal.plugins.DefaultPluginContainer.apply(DefaultPluginContainer.java:103)
at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:115)
... 40 more
根据错误消息的问题是在我的gradle-wrapper.properties,但它我认为:
distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
所以这里有什么问题?或者我做错了什么?我应该如何将应用程序自动上传到DeployGate? 谢谢,为答案。
看起来你正在使用'gradle'本身,所以它不会读取gradle-wrapper.properties。在项目目录中尝试'gradlew'(Gradle wrapper)。 – tnj
谢谢,我执行了'gradlew uploadDeployGate'命令并且它正在工作!你能解释一下你的答案中两个命令之间的区别是什么,所以我可以接受它?谢谢! :) – bendaf
我的荣幸。很高兴听到它解决。 :) – tnj