我已经按照迁移到android studio 3.0升级的步骤进行了操作。
的build.gradle
flavorDimensions 'dimensionless'
d:\ r \商家\ projapp \ popuplibrary \建立\中间体\束\调试\ RES \值\ values.xml 错误:(28,5)错误:未找到样式属性'@android:attr / windowEnterAnimation'。
C:\ Users \用户user.gradle \缓存\变换-1 \文件-1.1 \程序兼容性-v7-25.3.1.aar \ f7bb6db2aa55d14683d1c9ddd8d49e03 \ RES \值\ values.xml 错误:java.util.concurrent.ExecutionException:com.android.tools.aapt2.Aapt2Exception:AAPT2错误:检查日志以获取详细信息
错误:任务执行失败':popuplibrary:processDebugAndroidTestResources'。 无法执行aapt
面对同样的问题但是apccompat库也在我的案例中创建了问题。
style attribute '@android:attr/windowEnterAnimation' not found
gradlewrapper:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
build.gradle app:
productFlavors {
dev {
applicationIdSuffix '.dev'
versionName "1.0"
versionNameSuffix '-dev'
}
qa {
applicationIdSuffix '.qa'
versionName "1.0"
versionNameSuffix '-qa'
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
//Butter Knife
compile 'com.jakewharton:butterknife:8.7.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'
compile project(':popuplibrary')
}
答案 0 :(得分:26)
migration guide for Android Gradle Plugin 3.0.0。
中描述了此问题错误使用@资源引用符号
当您省略或错误地放置资源引用符号(
@
)时,AAPT2现在会抛出构建错误。例如,考虑在指定样式属性时是否省略该符号,如下所示:<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> ... <!-- Note the missing '@' symbol when specifying the resource type. --> <item name="colorPrimary">color/colorPrimary</item> </style>
构建模块时,AAPT2现在抛出以下构建错误:
ERROR: expected color but got (raw string) color/colorPrimary
此外,请考虑从android命名空间访问资源时是否错误地包含该符号,如下所示:
... <!-- When referencing resources from the 'android' namespace, omit the '@' symbol. --> <item name="@android:windowEnterAnimation"/>
构建模块时,AAPT2现在抛出以下构建错误:
Error: style attribute '@android:attr/windowEnterAnimation' not found
如果你没有犯下半部分描述的错误,那么也许应该归咎于appcompat-v7的旧版本。
更新到更新的支持库,选择25.4.0或26.1.0或27.0.0。确保您匹配compileSdkVersion
。
注意:如果您选择更新为早于27.0.0的内容,则可能会遇到this issue。
如果由于某种原因你遇到了25.3.1或更高版本,你可以disable AAPT2。
如果您在使用AAPT2时遇到问题,可以通过在
android.enableAapt2=false
文件中设置gradle.properties
并通过从命令行运行./gradlew --stop
重新启动Gradle守护程序来禁用它。
答案 1 :(得分:1)
就我而言,我在build.gradle中删除/更新了thebuildToolsVersion "27.0.3"
。
答案 2 :(得分:0)
尝试在android / build.gradle中使用 subprojects {} 块,并设置主项目中最近使用的android compileSdkVersion和buildToolsVersion,以便子项目也使用这些版本。
示例
using (var engine = new SpeechRecognitionEngine(new CultureInfo("en-US")))
{
engine.LoadGrammar(new Grammar("stock.cfg"));
engine.SetInputToWaveFile("go-up.wav");
var result = engine.Recognize();
}
答案 3 :(得分:0)
在android.enableAapt2=false
文件中添加gradle.properties
可解决此问题。