Android Studioで新しいプロジェクトを作成するたびに、常に次のように表示されるのはなぜですか。
エラー:(23、17)解決に失敗しました:junit:junit:4.12?
依存関係からtestCompile 'junit:junit:4.12'
を削除しても問題ありません。
build.gradle
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.okedroid.myapplication"
minSdkVersion 17
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.Android.support:appcompat-v7:23.0.1'
}
私は同じ問題を抱えていました。 build.gradle
ファイルに見つからないリポジトリのURLを追加することで解決しました。
Android {
[...]
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
[...]
}
それでおしまい。
Build.gradleファイルから「testCompile 'junit:junit:4.12'」を削除するだけです。
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'//remove this line and sync again... worked for me
androidTestCompile('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'}) //if available, also delete these two lines
compile 'com.Android.support:appcompat-v7:23.0.1'
}
私のために働いて、私は幸せです! :)
これはこの質問の実際の答えではないことを忘れないでください。これは、上記の行を削除したときに機能するためです。
それはjunitライブラリを取得することができません。
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
Build.gradleファイルのAndroidブロック内に上記の行を追加した後、問題を解決しました。これはあなたのAndroidスタジオがjunitライブラリを持っていないことが原因である可能性があります。
build.gradleファイルにリポジトリを追加します
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
おそらくあなたのgradleは不完全です、私はあなたが以下を加えることを勧めます
Android{
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
しかし場合によってはうまくいかないこともありますが、それはあなたのgradleのあなたの依存関係から完全に削除することができます。
ユーザーフォルダにある削除グラドルフォルダ条件でAndroidスタジオを再インストールすれば大丈夫だろうと思います.gradle
これは私が同じ問題を解決するためにしたことです。私はファイアウォールの内側にいますが、これは私が想定しているものと同じ問題です。だから私は削除しようとしました
testCompile 'junit:junit:4.12' line
しかし、それは私のために働きませんでした。以下のコードを追加してみました。
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
それでも私にとってはうまくいきませんでした。
モジュール設定の下のライブラリの依存関係から( - )と(+)Junit4.12を削除しようとしました。それでもそれは私にはうまくいきませんでした。
プロジェクトの同期と再構築を数回試行しました。それでも私にはうまくいきませんでした。
最後に私がしたのはmvnrepository WebサイトからJunit4.12.jarファイルを手動でダウンロードすることでした。このjarファイルをlibsフォルダーの中のProjectフォルダーの下のAndroids Workspaceに置きます。次に、モジュール設定>依存関係タブ>(+)>ファイル依存関係> Sleect pathウィンドウの下にある 'libs'フォルダを展開すると、そこにコピーしたJarファイルが見つかります。ファイルを選択して「OK」をクリックします。今すぐ依存関係のリストからjunit4.12の前のバージョンを削除します。
Dependenciesリストに1つのエントリ"libs\junit-4.12.jar"
があるはずです。それでは「OK」をクリックしてください。
これで、Gradleはプロジェクトを再構築します。あなたはうまくいくはずです。
お役に立てれば!
私はすべてを試してみるつもりですが、私が問題を解決するのを助ける唯一の事はラインを削除することでした
testCompile 'junit:junit:4.12'
アプリgradelから。
HTTPSがプロキシによってブロックされているために発生します。デフォルトのjcenter(HTTPSを使用)からHTTPに変更してみてください。
前
repositories {
jcenter()
}
後に
repositories {
jcenter {
//Default one is HTTPS
url "http://jcenter.bintray.com/"
}
}
すべてのプロジェクトに対して上記の手順を繰り返します。
allprojects {
repositories {
jcenter {
url "http://jcenter.bintray.com/"
}
}
}
プロキシを使っていますか ?もしそうなら、問題はあなたのgradle.properties
ファイルで https のための行方不明のネットワーク設定にあることができます。
AndroidStudioはデフォルトのプロキシ設定をプロジェクト内のgradle.properties
ファイルに自動的に設定しますが、httpの場合のみhttpsを忘れます。
だから基本的にあなたのgradle.properties
ファイルはhttpとhttpsの両方の設定を含む必要があります:
systemProp.http.proxyPassword=xxx
systemProp.http.proxyHost=xxx
systemProp.http.nonProxyHosts=xxx
systemProp.http.proxyUser=xxx
systemProp.http.proxyPort=xxx
systemProp.https.proxyPassword=xxx
systemProp.https.proxyHost=xxx
systemProp.https.nonProxyHosts=xxx
systemProp.https.proxyUser=xxx
systemProp.https.proxyPort=xxx
おそらくあなたは代理人です。私には思われ、私のモバイルテザリング(プロキシなし)再構築プロジェクトを使用してエラーが消えました。元の接続に戻り(プロキシ付き)、エラーなしで再構築します。
新しいプロジェクトを作成した後にこのエラーが発生しました。 build.gradleファイルで、私はこれを持っていました:
jcenter()
私はそれを次のように変更するとエラーは消えました。
jcenter {
url "http://jcenter.bintray.com/"
}
これは、私がファイアウォールの内側にいてURLを指定するとhttpsからhttpに変更されるためと考えられます。
エラーはjarファイルが見つからないことが原因で発生します。私の簡単な解決策は、C:¥Program Files¥Android¥Android Studio¥gradle¥m2repository ...に解決されないすべてのファイルをコピーすることです。(あなたのファイルパスは異なる場合があります)。私は解決することができない約6つの依存関係を得ました、junitはそれらの1つであり、他はcomとorgとjavaxです。私はファイアウォールの内側にいるので、リポジトリのコードを追加しても、Android Studioはそれにアクセスしていないようです。私はMavenリポジトリに行き、解決しないすべてのファイルをダウンロードしました。問題は解決し、Gradleはエラーなしで同期しました。しかし、私はたった1日の経験しかない認定された初心者なので、これがそれをするための正しい方法であるかどうか私はしません。
エラーの例:com:squareup:javawriter:2.1.1を解決できません
ステップ1:パスC:\ Program Files\Android\Android Studio\gradle\m2repository\com\squareup\javawriter\2.1.1 \を作成しました
ステップ2:私はMavenリポジトリからすべてのjarファイルをダウンロードしました: http://repo1.maven.org/maven2/com/squareup/javawriter/2.1.1/
ステップ3:私は手動でこのディレクトリからすべての.jarファイルをダウンロードしました
ステップ4:私はそれらをC:\ Program Files\Android\Android Studio\gradle\m2repository\com\squareup\javawriter\2.1.1 \にコピーしました
私はjunitを含めて解決しなかったすべてのファイルに対してこれを繰り返しました。
Junitの場合、私が作成したディレクトリは次のとおりです。C:¥Program Files¥Android¥Android Studio¥gradle¥m2repository¥junit¥junit¥4.12その後、このディレクトリ内にjunit-4.12.jarをコピーするとjunitエラーが消えました。
私は同じ問題を抱えていました。
1オプション:junit 4.12.jarをダウンロードしてlibフォルダにコピーし、Android Studioを再起動します。新しいプロジェクトを作成する必要はありません。
2つのオプション:インターネットに接続している新しいプロジェクトを作成し、新しく作成されたプロジェクト内のすべてのJavaおよびXMLコードをコピーします。この問題が恒久的に解決されるという利点
ほとんどの場合、プロジェクト作成時にSDKを更新したときにGradleのビルドが失敗するため、この問題が発生します。 maven と jcenter リポジトリを build.gradle(Module:app) に追加すれば問題は解決します。
repositories {
maven { url 'http://repo1.maven.org/maven2' }
jcenter { url "http://jcenter.bintray.com/" }
}
これらはあなたが後に追加しなければならない2行です
apply plugin: 'com.Android.application'
これは、これら2行を追加した後のコードの外観です。
apply plugin: 'com.Android.application'
repositories {
maven { url 'http://repo1.maven.org/maven2' }
jcenter { url "http://jcenter.bintray.com/" }
}
Android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.okedroid.myapplication"
minSdkVersion 17
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
私のAndroid Studioのインストールは完全にオフラインです。このような問題を解決するために、私はProcess Monitorを使用しました。 「Android Studio\gradle\m2repository」内にいくつかのファイルが欠けていることがわかりました。からすべてのファイルをダウンロードしました
そしてこれらのファイルを "Android Studio\gradle\m2repository"にコピーしました。 "mven2"の下にあるので、 "m2repository"の下に構造を作成する必要があります。足りないファイルがもっとあるかもしれませんが、現時点では少なくともGradleのビルドはエラーなしで終了しています。
これであなたのbuild.gradleを変えてください、私のためにうまく働きます:
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 23
buildToolsVersion "22.0.1"
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
defaultConfig {
applicationId "YOUR PACKAGE NAME"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.Android.support:appcompat-v7:23.0.0'
}
追加しました
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
Android
へ
[ファイル] - > [プロジェクト構造] - > [アプリケーション]タブの[プロパティ]に移動します。 "Library Repository" field に ' http://repo1.maven.org/maven2 'と入力し、Okを押します。それは私のためにそのように修正されました。これでプロジェクトはコンパイル中です。
この問題に直面した場合は、以下を変更することで完全に解決できます。
build.gradle(プロジェクト:...)
これを置き換えます
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:2.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenCentral()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
testCompile 'junit:junit:4.12'
行を削除します。dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.Android.support:appcompat-v7:23.0.1'
}
その後、プロジェクトをもう一度同期します。
Android Studioがgradleと同期していなかった理由がわかりませんでした。私のVPNが気に入らないことがわかりました。
私の場合は、インターネット接続だからです。たぶんいくつかのプロキシや無線LANのファイアウォール、あるいはおそらく接続を妨害する他のもの(私が手動でリンクにアクセスすると here chromeがファイルがあなたのコンピュータに害を及ぼすかもしれないと言ったので)。だから私は私の携帯電話からテザリングホットスポットのような別の接続を使用してみました。
あなたがプロキシの後ろにいるならば。 Android StudioはGradleにhttpのプロキシを追加しますが、httpsのプロキシは追加しません。 httpsのプロキシ設定をgradle.propertiesに追加します。
インターネットに接続してAndroid Studioを起動し、プロジェクトを開くだけです。 Gradle Syncの間、それはインターネット(All JAR Files)から依存関係をダウンロードします。これで解決しました。 Gradleファイルでの編集はなく、すべてAndroid Studioによって自動的に行われました。 Android Studio 2.2 :)を使用する
また、Java JDK 1.xをインストールすることを忘れないでください(7または8はすべてうまくいきます)。
私は同じ問題を抱えていたが、別の問題を抱えていた。
私の他の問題はGradleのビルドが遅すぎるということでした!
私はこれを行うことによって私の問題を解決しました
あなたがmdewが好きなら、あなたはこれをするためにあなたのプロジェクトを作成しているときはいつでもこれをする必要があります
あなたがmavenにデフォルトのオプションを設定したいのであれば
これを行う:
フォルダに移動します。
C:\Program Files\Android\Android Studio\plugins\Android\lib\templates\gradle-projects\NewAndroidProject\root
次に、notepad ++またはnotepadでbuild.gradle.ftl
ファイルを開き、すべてのjcenter()
をmavenCentral()
に置き換えます。
編集:なぜその下落が投票したのですか?あなたはそれが好きではありませんか?
これを試して:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
//testCompile 'junit:junit:4.12'
compile 'com.Android.support:appcompat-v7:23.3.0'
compile 'com.Android.support:design:23.3.0'
compile 'com.google.code.gson:gson:2.2.4'
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.Android.support:appcompat-v7:23.1.1'
}
注:testCompileの 'junit:junit:4.12'行を削除して私の問題を解決しました。
多くの答えを見てくださいが、何もうまくいきません。幸いなことに、簡単な解決策を見つけました。 junit4.12にコメントするか、削除する必要はありません。問題はここにあります:
- androidTestCompile files('libs/junit-4.12.jar')
この部分は、あなたのプロジェクトのライブラリでファイルを探すためのパスを示しています。理由はわかりませんが、何らかの理由でデフォルトでは空です。私の場合、パスは次のとおりです。
C:\Users\arzakhar\AndroidStudioProjects\MyApp\app\libs
もちろんbuild.grandle(Module.app)
というコードでこの行を削除できますが、後で必要になるかもしれません。これが解決策です。
1 - junit-4.12.jarをダウンロードするか、あなたのAndroid Studioフォルダーからコピーしてください。通常はそこにあるはずです。私の場合、それはここにありました:
C:\Program Files\Android\Android Studio\lib
上記のディレクトリに(あなたのプロジェクトに)
2 - 削除して追加
3 - 再構築
4 - 一生懸命働きます
私は自分の状況に適した完璧な解決策を提案したいと思います。
最初に、追加を確認してください
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
buildscript {}
ブロック内のプロジェクトレベルのbuild.gradleファイルへ
それから加えて
allprojects {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
プロジェクトレベルのbuild.gradleファイルへ
次のポイントは追加されています
repositories {
jcenter()
mavenCentral()
}
buildTypes{ }
内のモジュールレベルのbuild-gradleへ
私の場合、解決策は追加することでした
repositories {
mavenCentral()
}
buildTypes {}内のモジュールレベルのbuild-gradleへ
それがないとAndroidStudioはmavenからjunitをダウンロードできないとします。
これらの答えのどれもあなたのためになければ、Android Studioのキャッシュ/再起動をクリアしてみてください。それが私のために働いた唯一のものでした:
ファイルメニューのオプションから、「キャッシュを無効にする/再起動」を選択しました。
https://teamtreehouse.com/community/gradle-project-sync-failed-7
会社のファイアウォールの内側にいない場合は、Android Studioを使用すると自然に問題が解決します。しかし、企業のファイアウォールの内側にいる場合は、この問題が発生します。そのため、ファイルをダウンロードすることが回避策になります。あなた自身のホームネットワークでは、Android Studioをアップデートすると問題が解決し、手動で作成したファイルを削除するように求められます。削除しても安全なので、OKを押してください。
それはjarの指定されたオンラインの場所でそれを取得することができないかもしれません。build.gradleのこの部分(プロジェクトのためのgradleファイル)をチェックしてください。その場所にアクセスできない可能性があります(ファイアウォールまたはその他の問題)
repositories{
//some location like jcenter() or maven{.some location }
}
これをしなさい:瓶をダウンロードしなさい
repositories {
//previous codes untouched
flatDir {
dirs 'location to jar'
}
}
それがうまくいくことを願っています;)
私は同じ問題を抱えていたが、インターネットに接続した状態でプロジェクトを開くと、gradleが同期を構築し、自動的に関連ファイルがダウンロードされ、テストにJ Unitプラグインが必要になったとき
いずれかのエラーが発生した場合は "failed-to-resolve-junitjunit4-12"その後HTTP PRoxyの設定に行き、あなたのインターネット接続を確認してください。学校/大学でプロキシサーバーを使用している場合は、プロキシ設定を設定して接続がテストされ、設定が適用されてから再度グラドルを実行すると、すべてのエラーを解決できます。私はこれを試してみて、私はすべてのエラーを解決します。注:Junit ....を削除する必要はありません。ウマイル
あなたはウィンドウズにJavaをあてがうべきです。
Java_HOME
に、変数値をJavaをインストールしたアドレスに設定します。たとえば、私にとってはC:\ProgramFiles\Java\jdk1.8.0_66
です。その後、OKボタンをクリックしてください。mavenCentral()
以外はリポジトリをjcenter()
に変更
インターネットに接続した状態でプロジェクトをコンパイルして実行するだけです。
それはアンドロイドスタジオ1.5 Ubuntu 15.04で私のために働いた
私の場合、それはとても有線だったのです!正しいプロキシを追加する以外に(私は社内で働いています)、他の2つのライブラリを依存関係に追加する必要がありました。
compile 'com.Android.support:appcompat-v7:25.0.1'
compile 'com.Android.support:design:25.0.1'
その後、 "junit:junit:4.12"のエラーが解決されました。 build.gradle内のすべての依存関係が、プロジェクト構造内でインポートしたものと一致することを確認してください
この答えは少し遅れるかもしれませんが、数時間かけて答えを調べても何もうまくいきませんでした。辛抱強くエラーログを読んだ後、私はAndroid Studioが間違ったハッシュコードでJUnitのキャッシュバージョンを使おうとしたことに気づきました。これを解決するには、C:\Android\caches\modules-2
ディレクトリを削除してビルドを再開します。
お役に立てれば!