web-dev-qa-db-ja.com

Ionic 3 intellij-core-26.0.1でのprodリリースビルドの問題

次のバージョンを使用してリリースAPKを作成しています:node-8.12.0 gradle-4.10.2 ionic CLI-4.0.5 Cordova-8.0.0

実行すると

ionic cordova build Android --prod --release

次のエラーが表示されます。

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':CordovaLib'.
> Could not resolve all files for configuration ':CordovaLib:classpath'.
   > Could not find intellij-core.jar (com.Android.tools.external.com-intellij:intellij-core:26.0.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/Android/tools/external/com-intellij/intellij-core/26.0.1/intellij-core-26.0.1.jar

ブラウザに「intellij-core-26.0.1」URLを配置すると、ステータス404が表示されます。

誰でも、提案してください

22
user3541485

問題は今日早く始まったようです。

動作する可能性のあるものがいくつかあります。

私のために働いたステップは:

\ platforms\Android\CordovaLib\build.gradle」ではなく「\ platforms\Android\build.gradle」を編集して、jcenter() maven… here に掲載

repositories {
        maven {
            url "https://maven.google.com"
        }
        jcenter()
}

あなたは試すことができます:

'platforms/Android/build.gradle'を編集すると、 'netexpo'が指すように here がさらに表示されます。 ここ 、Ionicフォーラム。

allprojects {
    repositories {
        mavenCentral()
        maven {
            url "https://maven.google.com"
        }
        jcenter()
    }
}

もう1つ:

MeterMoDevによる投稿 here

ビルドすることもできましたが、次のことを行いました。

閉じたAndroid StudioもVSを閉じました。 Androidプラットフォームを削除しました。 Androidプラットフォームを再度追加します。ビルドを実行する前に、\ platforms\Android\build.gradleを開き、推奨される@netexpoなどのリポジトリを編集し、ファイルを保存します。 Android Studioでプロジェクトを開き、studioがgradleファイルを同期するのを待って、いくつかのアイテムをダウンロードしました。同期プロセスが完了した後、ファイルはビルドされました。

 repositories {
    mavenCentral()
    maven {
        url "https://maven.google.com"
    }
    jcenter()
}
7
lucasmds

イオンコルドバプラットフォームはAndroidを削除します

イオンコルドバプラットフォームは[email protected]を追加します

9
2sec

platforms/Android/build.gradleに移動します

これを変更:

jcenter()    
maven {
   url "https://maven.google.com"
}

maven {
   url "https://maven.google.com"
}
jcenter()  //Just move this line  
7
Ruben Sala

ルーベン・サラの提案に続いて、それは私にとってはうまくいきませんでした。ただし、platforms/Android/CordovaLib/build.gradle、およびルーベンが示唆するのと同じ修正を適用します。

つまり変化する:

repositories {
    jcenter()
    maven {
        url "https://maven.google.com"
    }
}

に:

repositories {
    maven {
        url "https://maven.google.com"
    }
    jcenter()
}
6
keldar

Platform\Android\CordovaLib\build.gradleのbuildscriptセクションを次から変更します

repositories {
    jcenter()
    maven {
        url "https://maven.google.com"
    }
}

repositories {
    google()
    jcenter()
}

私のために問題を修正しました。 CLIとASは現在正常に構築されています。

0
P. Stresow

ビルドフックが便利になるたびに手動で変更を行うのではなく、CI(Jenkins/Travis)で問題が発生している場合は????

config\before_compile_Android.jsにファイルを作成します

module.exports = function(ctx) {
    'use strict';
    var fs = ctx.requireCordovaModule('fs'),
        path = ctx.requireCordovaModule('path'),
        deferral = ctx.requireCordovaModule('q').defer(),
        async = require('async');
    var platformRoot = path.join(ctx.opts.projectRoot, 'platforms/Android');
    var gradleFiles = [path.join(platformRoot, 'build.gradle'), path.join(platformRoot, 'CordovaLib', 'build.gradle')];
    async.each(gradleFiles, function(f, cb) {
        fs.readFile(f, 'utf8', function(err, data) {
            if (err) {
                cb(err);
                return;
            }
            var result = data;
            if (data.indexOf("maven.google.com") >= 0) {
                console.log("Mirror already present in gradle file.\nSkipping...");
            }else{
                result = data.replace(/jcenter\(\)/g, 'maven{url "https://maven.google.com"}\njcenter()');
            }
            fs.writeFile(f, result, 'utf8', cb);
        });
    }, function(err) {
        if (err) {
            deferral.reject();
        } else {
            deferral.resolve();
        }

    });
    return deferral.promise;
}

config.xmlbefore_compile用に設定します

<platform name="Android">
   <hook src="config/before_compile_Android.js" type="before_compile" />
...

p.s。スクリプト全体を書いたわけではありませんが、この問題を解決するためにスクリプトを修正しました

0

\ platforms\Android\build.gradleファイル(39行目)を編集して修正しました://プラグインがbuild-extras.gradleを介してMaven依存関係を宣言できるようにします。

 allprojects {
        repositories {
            mavenCentral()
            maven {
                url "https://maven.google.com"
            }
            jcenter()
        }
    }
0
Kiran Haridas