错误:(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' }
为我工作,我很高兴! 🙂
请记住,这不是这个问题的实际答案。 我之所以提到这个,是因为它在你移除上面的行时起作用
转到文件 – >项目结构。 以下窗口将打开:
从那里:
- 删除junit库(selectjunit并按下“ – ”button)和
- 再次添加(select下面的“+”button,select“库”,search“junit”,按OK)。 按确定以应用更改。 大约30秒后,你的gradle同步应该可以正常工作。
希望它也适用于你:D
这是不能得到junit图书馆。
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编译。 简单..完成。
参考图片:
红人的VV
我的Android Studio安装完全脱机。 为了解决这些问题,我使用了Process Monitor。 它显示在“Android Studio \ gradle \ m2repository”中缺less一些文件。 我已经下载了所有的文件
- http://repo1.maven.org/maven2/junit/junit/4.12/
- http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/
- repo1.maven.org/maven2/org/hamcrest/hamcrest-parent/1.3/(我只能发布两个链接… ;-))
并在“Android Studio \ gradle \ m2repository”中复制这些文件。 您必须在“m2repository”下方创build结构,因为它位于“maven2”下方。 也许还有更多的丢失文件,但是至less在这个时候,Gradle构build完成没有错误。
大多数情况下,当您更新SDK时,会出现这个问题,在项目创build时,Gradle构build失败。 如果你添加maven和jcenter仓库到你的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
- 确保你不在代理之后!
- 如果您将Android Strudioconfiguration为使用代理,请确保在Android Studio偏好设置下禁用该选项
- 在Android Studio的Android视图下转到gradle.properties,并删除所有的代理configuration
- 同步您的gradle现在
- 享受编码!
仔细查看许多答案,但没有任何工作。 幸运的是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 – 删除和添加
3 – 重build
4 – 努力工作