错误:(23,17)无法parsing:junit:junit:4.12

为什么每次我在Android Studio中创build一个新项目时,总是会出现:

错误:(23,17)无法parsing: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文件中添加缺less的存储库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' } 

为我工作,我很高兴! 🙂

请记住,这不是这个问题的实际答案。 我之所以提到这个,是因为它在你移除上面的行时起作用

转到文件 – >项目结构。 以下窗口将打开:

在这里输入图像描述

从那里:

  1. 删除junit库(selectjunit并按下“ – ”button)和
  2. 再次添加(select下面的“+”button,select“库”,search“junit”,按OK)。 按确定以应用更改。 大约30秒后,你的gradle同步应该可以正常工作。

希望它也适用于你:D

这是不能得到jun​​it图书馆。

 repositories { maven { url 'http://repo1.maven.org/maven2' } } 

在build.gradle文件中添加android代码块之后,解决了问题。 这可能是因为你的Android工作室没有junit库。

可能你的gradle是不完整的,我build议你添加以下内容

 android{ repositories { maven { url 'http://repo1.maven.org/maven2' } } 

但在某些情况下是行不通的,你可以从你的gradle中完全删除你的依赖关系。

我认为这将是确定的,如果你重新安装Android的工作室与删除gradle文件夹的条件是在用户文件夹中的.gradle

在build.gradle文件中添加仓库

 repositories { maven { url 'http://repo1.maven.org/maven2' } } 

这是我做的解决同样的问题。 我在防火墙后面,这与我想的是同一个问题。 所以我曾尝试删除

 testCompile 'junit:junit:4.12' line 

但那不适合我。 我尝试添加下面的代码行:

 repositories { maven { url 'http://repo1.maven.org/maven2' } } 

即使这对我也没有用。

我尝试从模块设置下的库依赖项中删除( – )和读取(+)Junit4.12。 但是,这仍然不适合我。

尝试了几次同步和重build项目。 仍然没有为我工作。

最后我做的是从mvnrepository网站手动下载Junit4.12.jar文件。 我把这个jar文件放在libs文件夹下的Project文件夹下的Androids工作区中。 然后在Sleect path窗口下的Module Settings> Dependencies Tab>(+)> File Dependency>,展开'libs'文件夹,你会发现里面复制的Jar文件。 select文件,然后单击“确定”。现在从依赖关系列表中删除以前版本的junit4.12。

你应该在Dependencies列表中有一个条目"libs\junit-4.12.jar" 。 现在点击“确定”。

现在Gradle会重build这个项目,你应该好好去。

希望这可以帮助!

我会尝试永恒,但唯一能帮助我解决问题的是删除线

 testCompile 'junit:junit:4.12' 

从应用程序gradel。

创build新项目后,我收到了这个错误。 在build.gradle文件中,我有这样的:

 jcenter() 

我将其更改为以下错误消失:

 jcenter { url "http://jcenter.bintray.com/" } 

我认为这是因为我在防火墙后,并指定url,如此更改从https到http

可能你是在代理之后。 发生在我身上,用我的移动共享(无代理)重build项目和错误消失。 返回到原始连接(与代理)并重build没有错误。

你使用代理吗? 如果是这样的话,那么问题可能在于缺less您的gradle.properties文件中https的networkingconfiguration。

AndroidStudio会将您的默认代理设置自动放置到项目中的gradle.properties文件中,但仅用于http和忘记https。

所以基本上你的gradle.properties文件需要同时包含http和https config:

 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 

发生这种情况是因为HTTPS被Proxy阻止。 尝试将默认的jcenter(使用HTTPS)更改为HTTP。

之前

 repositories { jcenter() } 

 repositories { jcenter { //Default one is HTTPS url "http://jcenter.bintray.com/" } } 

对所有项目重复上述步骤。

 allprojects { repositories { jcenter { url "http://jcenter.bintray.com/" } } } 

错误是由缺lessjar文件引起的。 我简单的解决scheme就是将所有不parsing的文件复制到C:\ Program Files \ Android \ Android Studio \ gradle \ m2repository …(您的文件path可能不同)。 我得到了6个无法解决的依赖关系,junit是其中之一,其他的是com和org和javax。 由于我在防火墙后面,即使我为存储库添加了代码,Android Studio似乎也无法访问它。 我去了Maven仓库,并下载了所有不能解决的文件。 问题解决了,Gradle同步没有错误。 但我是一个只有1天的经验authentication的新手,所以我不这样做,如果这是正确的方法来做到这一点。

示例错误:无法parsingcom:squareup:javawriter:2.1.1

步骤1:我创build了一个pathC:\ 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文件

第四步:我将它们复制到C:\ Program Files \ Android \ Android Studio \ gradle \ m2repository \ com \ squareup \ javawriter \ 2.1.1 \

我重复了所有这些没有解决的文件,包括junit。

对于junit,下面是我创build的目录:C:\ Program Files \ Android \ Android Studio \ gradle \ m2repository \ junit \ junit \ 4.12然后我复制这个目录中的junit-4.12.jar并且junit错误消失了。

像这样改变你的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

转到文件 – >项目结构 – >依赖关系你会发现 – > junit:单位:4.12

在右侧,从下拉列表中select编译。 简单..完成。

参考图片: http://i.stack.imgur.com/5WvS3.png

红人的VV

我的Android Studio安装完全脱机。 为了解决这些问题,我使用了Process Monitor。 它显示在“Android Studio \ gradle \ m2repository”中缺less一些文件。 我已经下载了所有的文件

  1. http://repo1.maven.org/maven2/junit/junit/4.12/
  2. http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/
  3. repo1.maven.org/maven2/org/hamcrest/hamcrest-parent/1.3/(我只能发布两个链接… ;-))

并在“Android Studio \ gradle \ m2repository”中复制这些文件。 您必须在“m2repository”下方创build结构,因为它位于“maven2”下方。 也许还有更多的丢失文件,但是至less在这个时候,Gradle构build完成没有错误。

大多数情况下,当您更新SDK时,会出现这个问题,在项目创build时,Gradle构build失败。 如果你添加mavenjcenter仓库到你的build.gradle(Module:app),你的问题就解决了。

 repositories { maven { url 'http://repo1.maven.org/maven2' } jcenter { url "http://jcenter.bintray.com/" } } 

这是你必须添加的两行之后

 apply plugin: 'com.android.application' 

这是你的代码看起来像添加这两行后的样子

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

我有同样的问题。

  • 1选项:下载junit 4.12.jar并将其复制到lib文件夹中,然后重新启动android studio。 好处你不必创build任何新的项目

  • 2选项:创build一个具有互联网连接的新项目,并复制新创build的项目中的所有Java和XML代码。 有利于这个问题将永久解决

删除行testCompile 'junit:junit:4.12'

 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.1' } 

之后再次同步项目。

 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.1.1' } 

注意:删除testCompile'junit:junit:4.12'行已经解决了我的问题。

尝试这个:

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

如果你在代理的背后。 Android Studio将为http添加代理到Gradle,但不会为https。 将https的代理设置添加到gradle.properties中

如果你面对这个问题,你可以通过改变来完全解决它:

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 } 

我有同样的问题,但有另一个问题。

我的另一个问题是,Gradle的构build太慢了!

我这样做解决了我的问题

如果你喜欢mdew,你需要这个任何时候你创build你的项目来做到这一点

所以如果你想将默认选项设置为maven

做这个:

转到该文件夹​​:

 C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidProject\root 

然后用记事本++或记事本打开build.gradle.ftl文件,并用jcenter()replace所有的mavenCentral()

编辑:为什么它下去投票? 你不喜欢吗?

我无法弄清楚为什么Android Studio不与Gradle同步。 事实certificate,它不喜欢我的VPN,所以要注意!

转到“文件” – >“项目结构” – >“应用程序”在“属性”选项卡中。 在“库资源库” 字段中input “ http://repo1.maven.org/maven2 ”,然后按“确定”。 这对我来说是固定的。 现在该项目正在编译。

只需连接到互联网,启动Android Studio并打开您的项目。 在Gradle Sync中,它将从Internet(所有JAR文件)下载依赖关系。 这为我解决了。 没有在Gradle文件中编辑,全部由Android Studio自动完成。 使用Android Studio 2.2 🙂

另外不要忘记安装Java JDK 1.x(7或8都可以正常工作)。

我很乐意提出适合我的情况的完美解决scheme:

  • 首先,确保添加

     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中的模块级构buildgradle

  1. 确保你不在代理之后!
  2. 如果您将Android Strudioconfiguration为使用代理,请确保在Android Studio偏好设置下禁用该选项
  3. 在Android Studio的Android视图下转到gradle.properties,并删除所有的代理configuration
  4. 同步您的gradle现在
  5. 享受编码!

仔细查看许多答案,但没有任何工作。 幸运的是find了简单的解决scheme。 无需评论junit4.12或删除它。 问题在这里:

 - androidTestCompile files('libs/junit-4.12.jar') 

这部分向我们展示了在项目中查找库中文件的path。 不知道为什么,但由于某种原因,默认情况下它是空的。 在我的情况下,path是:

 C:\Users\arzakhar\AndroidStudioProjects\MyApp\app\libs 

当然你可以在代码build.grandle(Module.app)删除这一行,但以后可能需要它。 这是解决scheme:

1 – 下载junit-4.12.jar或从你的Android Studio文件夹复制它,通常它应该在那里。 就我而言,这是在这里:

 C:\Program Files\Android\Android Studio\lib 

到上面提到的目录(到您的项目)

2 – 删除和添加

在这里你应该重新输入你的junit-4.12.jar的根目录

3 – 重build

4 – 努力工作