Не удалось найти метод maven () для вызова из этого списка: - PullRequest
0 голосов
/ 18 мая 2018

В настоящее время я пытаюсь эмулировать (а затем собрать) и Ionic App (w / Angular) для Android.Я чувствую необходимость предвосхитить это, сказав, что я не разработчик 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)

Я получаю аналогичное сообщение в Android Studio, когда я пытаюсь создать свой проект илиGrad Sync:

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 Tools, а также (при попытке устранения неполадок) установленные Gradle и Maven с помощью homebrew.

Добавил следующие пути к моему .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

Принял все условия лицензии через CLIsdkmanager

Создано виртуальное устройство через AVD Manager

Running 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

Running 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

Любая помощь в поиске пути преодоления этого и до завершенной, успешной сборки будет очень цениться!

1 Ответ

0 голосов
/ 18 мая 2018

После

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/'
            }
}

Это важноorder.

Примечание: Вам потребуется определить хранилище вне buildscript.Блок конфигурации buildscript устанавливает только репозитории и зависимости для пути к классам вашего сценария сборки, но не для вашего приложения. смотри это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...