我目前正在尝试为Android模拟(然后构建(和Ionic App(带Angular(。我觉得有必要先说我不是Android开发人员,这是我第一次必须设置环境,所以我为任何"明显"的错误或错过的步骤道歉。
我一直无法克服此错误(运行ionic cordova emulate android --debug --consolelogs
后出现(:
BUILD FAILED
Total time: 0.794 secs
[11:12:25] lint finished in 1.74 s
Error: /path/to/app/platforms/android/gradlew: Command failed with exit code 1 Error output:
FAILURE: Build failed with an exception.
* Where:
Build file '/path/to/app/platforms/android/build.gradle' line: 24
* What went wrong:
A problem occurred evaluating root project 'android'.
> Could not find which method maven() to invoke from this list:
public abstract org.gradle.api.artifacts.repositories.MavenArtifactRepository org.gradle.api.artifacts.dsl.RepositoryHandler#maven(groovy.lang.Closure)
public abstract org.gradle.api.artifacts.repositories.MavenArtifactRepository org.gradle.api.artifacts.dsl.RepositoryHandler#maven(org.gradle.api.Action)
当我尝试构建项目或同步 Gradle 时,我在 Android Studio 中收到类似的消息:
Could not find which method maven() to invoke from this list:
public abstract org.gradle.api.artifacts.repositories.MavenArtifactRepository org.gradle.api.artifacts.dsl.RepositoryHandler#maven(groovy.lang.Closure)
public abstract org.gradle.api.artifacts.repositories.MavenArtifactRepository org.gradle.api.artifacts.dsl.RepositoryHandler#maven(org.gradle.api.Action)
Open File
我的build.gradle
文件中失败的行如下所示:
buildscript {
repositories {
maven () < HERE
jcenter()
google ()
}
// Switch the Android Gradle plugin version requirement depending on the
// installed version of Gradle. This dependency is documented at
// http://tools.android.com/tech-docs/new-build-system/version-compatibility
// and https://issues.apache.org/jira/browse/CB-8143
dependencies {
classpath 'com.android.tools.build:gradle:4.7'
}
}
对于上下文,我有:
下载了Android Studio,JDK和SDK工具,以及(在尝试故障排除时(通过自制软件安装了Gradle和Maven。
将以下路径添加到我的.bash_profile
(并确认文件路径包含他们所说的内容,以及匹配的版本(:
export ANDROID_HOME=$HOME/Library/Android/sdk`
export JAVA_HOME=$(/usr/libexec/java_home)
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export M2_HOME=/usr/local/Cellar/maven/3.5.3/libexec
export M2=$M2_HOME/bin
export PATH=$PATH:$M2_HOME/bin
export PATH=$PATH:/opt/gradle/gradle-4.7/bin
通过 CLI sdkmanager 接受所有许可条款
通过 AVD 管理器创建了虚拟设备
运行ionic info
将返回以下内容:
cli packages: (/Users/katesowles/.node/lib/node_modules)
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0
global packages:
cordova (Cordova CLI) : 7.0.1
local packages:
@ionic/app-scripts : 1.3.0
Cordova Platforms : android 6.2.3 browser 4.1.0 ios 4.5.4
Ionic Framework : ionic-angular 3.0.1
System:
Android SDK Tools : 26.1.1
ios-deploy : 1.9.2
Node : v8.7.0
npm : 5.4.2
OS : macOS High Sierra
Xcode : Xcode 9.3 Build version 9E145
Environment Variables:
ANDROID_HOME : /Users/katesowles/Library/Android/sdk
Misc:
backend : pro
跑步mvn --version
回报
Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T11:49:05-08:00)
Maven home: /usr/local/Cellar/maven/3.5.3/libexec
Java version: 1.8.0_171, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.4", arch: "x86_64", family: "mac"
运行gradle --version
回报
------------------------------------------------------------
Gradle 4.7
------------------------------------------------------------
Build time: 2018-04-18 09:09:12 UTC
Revision: b9a962bf70638332300e7f810689cb2febbd4a6c
Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.9 compiled on February 2 2017
JVM: 1.8.0_171 (Oracle Corporation 25.171-b11)
OS: Mac OS X 10.13.4 x86_64
任何帮助找到解决这个问题的方法并完成,成功的构建将不胜感激!
之后
apply plugin: 'com.android.application'
您应该添加以下内容:
repositories {
mavenCentral()
maven {
url "https://repository-achartengine.forge.cloudbees.com/snapshot/"
} // some dependency like this.
}
如果您有具有身份验证的 maven,则可以使用:
repositories {
mavenCentral()
maven {
credentials {
username xxx
password xxx
}
url 'http://mymaven/xxxx/repositories/releases/'
}
}
这是重要的顺序。
注意:您需要在构建脚本之外定义存储库。构建脚本配置块仅设置构建脚本类路径的存储库和依赖项,而不设置应用程序的存储库和依赖项。看到这里