我试图了解如何在不使用和不使用IDE的情况下构建Android应用程序,因此基本上是从头开始。我发现构建Android应用的好方法是使用Gradle。
因此从命令行中,在项目的根目录中,我键入“ gradle wrapper”,以便它创建所有使用gradle的必要文件,然后键入“ gradle init”,并在其中创建build.gradle文本文件。必须放置所有设置来构建项目(我想)。这是我在互联网上搜索的内容。
// 1
buildscript {
// 2
repositories {
google()
jcenter()
}
// 3
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.51'
}
}
// 4
allprojects {
repositories {
google()
jcenter()
}
}
所以我在命令行上写了“ ./gradle AssembleDebug”来执行构建,但是它给了我这些错误。
FAILURE: Build failed with an exception.
* Where:
Build file '/home/michelangelo/Documents/HelloAndroid/build.gradle' line: 5
* What went wrong:
A problem occurred evaluating root project 'HelloAndroid'.
> Could not find method google() for arguments [] on repository container of type org.gradle.api.internal.artifacts.dsl.DefaultRepositoryHandler.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
我以前从未做过这样的事情,所以我不知道该怎么办。
答案 0 :(得分:0)
尝试./gradlew AssembleDebug
。 Gradle包装器(gradlew)本身应该能够拾取属性并将其传递到gradle工具上运行。
您应该使用gradlew工具,而不是直接使用gradle。
请参阅Google官方指南Build your app from the command line;
您可以执行所有可用于Android项目的构建任务 使用Gradle包装器命令行工具。可以批量使用 Windows文件(gradlew.bat),Linux和Mac的Shell脚本 (gradlew.sh),您可以从每个项目的根目录访问它 用Android Studio创建。
要使用包装器运行任务,请使用以下命令之一 终端窗口(在Android Studio中,选择视图>工具窗口> 终端):
在Windows上:
gradlew task-name
在Mac或Linux上:
./gradlew task-name
您可以在Gradle的official documentation中阅读有关Gradle包装器的信息。另请阅读此博客文章; Understanding the Gradle Wrapper。
您还可以看到如何通过this yml文件中的命令行指令在CircleCI系统上仅从项目源文件,一些gradle属性和依赖项文件构建Android应用。
希望这对您有所帮助。