所以我安装了android studio 3.0.1,并且一打开gradle并显示以下错误。我尝试添加设计和支持等依赖项,但是徒劳无功。有人能帮助我吗? 先感谢您。
它显示找不到某些属性,如dialogCornerRadius和fontVariation设置。
答案 0 :(得分:122)
由于compileSdkVersion
和compileSdkVersion 27
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
不匹配而发生此错误
图书馆版。
例如:
implementation 'com.android.support:appcompat-v7:26.+'
并且还避免对库使用+符号,如下所示:
implementation 'com.android.support:appcompat-v7:26.1.0'
使用像这样的精确库版本
displayRecords();
function displayRecords()
{
$.ajax({
url: 'process/getRecords.php',
type: 'POST',
data: '',
dataType: 'html',
success: function(data, textStatus, jqXHR)
{
var jsonObject = $.parseJSON(data);
var table = $('#resultsTable').DataTable({
{
"data": jsonObject,
"columns": [
{"data": "JOB_REFERENCE"},
{"data": "VOYAGE_REFERENCE"},
// few more columns
],
"iDisplayLength": 25,
"scrollY": 500,
"scrollX": true,
"bDestroy": true,
"paging": true,
"stateSave": true
}
},
error: function(jqHHR, textStatus, errorThrown)
{
console.log('fail: '+ errorThrown);
}
});
// button click to export results
var tableresults = $('#resultsTable').dataTable();
$("#btnExport").on('click', function(e)
{
e.preventDefault();
window.open('data:application/vnd.ms-excel,' +
encodeURIComponent(table[0].outerHTML));
});
}
在库中使用+符号使得构建过程难以收集所需的确切版本,从而使系统不稳定,因此不应该这样做。
答案 1 :(得分:34)
如果您迁移到AndroidX并出现此错误,则需要将编译SDK设置为Android 9.0(API级别28)或更高版本
答案 2 :(得分:14)
检查您的依赖项是否在版本中使用+
。某些依赖项可能正在使用com.android.support:appcompat-v7:+
。当新版本发布并且可能破坏功能时,这会导致问题。
解决方法是使用com.android.support:appcompat-v7:{compileSdkVersion}.+
或完全不使用+
并使用完整版(例如com.android.support:appcompat-v7:26.1.0
)。
如果你在build.gradle文件中看不到这一行,请在android studio终端中运行,以概述每个依赖项使用的内容
gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath
(包括androidtest依赖项)
OR
gradlew -q dependencies app:dependencies --configuration debugCompileClasspath
(调试的常规依赖项)
导致看起来接近这个
的东西------------------------------------------------------------
Project :app
------------------------------------------------------------
debugCompileClasspath - Resolved configuration for compilation for variant: debug
...
+--- com.android.support:appcompat-v7:26.1.0
| +--- com.android.support:support-annotations:26.1.0
| +--- com.android.support:support-v4:26.1.0 (*)
| +--- com.android.support:support-vector-drawable:26.1.0
| | +--- com.android.support:support-annotations:26.1.0
| | \--- com.android.support:support-compat:26.1.0 (*)
| \--- com.android.support:animated-vector-drawable:26.1.0
| +--- com.android.support:support-vector-drawable:26.1.0 (*)
| \--- com.android.support:support-core-ui:26.1.0 (*)
+--- com.android.support:design:26.1.0
| +--- com.android.support:support-v4:26.1.0 (*)
| +--- com.android.support:appcompat-v7:26.1.0 (*)
| +--- com.android.support:recyclerview-v7:26.1.0
| | +--- com.android.support:support-annotations:26.1.0
| | +--- com.android.support:support-compat:26.1.0 (*)
| | \--- com.android.support:support-core-ui:26.1.0 (*)
| \--- com.android.support:transition:26.1.0
| +--- com.android.support:support-annotations:26.1.0
| \--- com.android.support:support-v4:26.1.0 (*)
+--- com.android.support.constraint:constraint-layout:1.0.2
| \--- com.android.support.constraint:constraint-layout-solver:1.0.2
(*) - dependencies omitted (listed previously)
如果您无法控制更改版本,请尝试强制使用特定版本。
configurations.all {
resolutionStrategy {
force "com.android.support:appcompat-v7:26.1.0"
force "com.android.support:support-v4:26.1.0"
}
}
根据设置为28.0.0
的内容,力依赖性可能需要不同答案 3 :(得分:13)
我有完全相同的问题。以下主题帮助我解决了这个问题。只需将Compile SDK版本设置为Android P.
即可答案 4 :(得分:9)
在使用具有多个模块的应用程序时遇到相同的问题,请检查以确保在将模块中的compileSdkVersion
和targetSdkVersion
的值增加到28+时也要对其他模块执行同样的操作。 / p>
一个模块在compileSdkVersion 29
和targetSdkVersion 29
上运行,而应用程序的第二个模块在compileSdkVersion 27
和targetSdkVersion 27
上运行。
更改第二个模块以进行编译并以SDK版本29为目标解决了我的问题。希望这对某人有帮助。
答案 5 :(得分:5)
也许为时已晚,但我找到了解决方法:
您必须在build.gradle
->中编辑compileSdkVersion
至最新(现在是28)。像这样:
android {
compileSdkVersion 28
defaultConfig {
applicationId "NAME_OF_YOUR_PROJECT_DIRECTORY"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
或者您可以更改实现的版本:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
api 'com.android.support:design:27.+'
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
答案 6 :(得分:5)
这是因为compileSdkVersion,buildToolsVersion和Dependecies实现不匹配 您必须这样做,我才拥有28个图书馆
const { ResourceManagementClient } = require('azure-arm-resource');
const resourceClient = new ResourceManagementClient(credentials, subscriptionId);
resourceClient.resourceGroups.createOrUpdate(groupName, groupParameters);
如果我们在少于28处使用“任意”,则应发生此错误,因此请尝试全部使用匹配库。
答案 7 :(得分:5)
我在添加mapbox导航API时遇到了相同的问题,并通过以下方法解决了该问题:file> project Structure,然后将compile sdk版本和build工具版本设置为最新版本。 这是屏幕截图:
希望有帮助。
答案 8 :(得分:2)
就我而言,我尝试尝试File
> Invalidate Cache/Restart
,这对我有用。
答案 9 :(得分:2)
尝试将compileSdkVersion更改为:compileSdkVersion 28
答案 10 :(得分:1)
必须按如下所示应用依赖项来解决此问题:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.android.support:support-v4:27.1.0'
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:recyclerview-v7:27.1.0'
}
请不要使用以下版本:
V7:28.0.0-α1
答案 11 :(得分:1)
我遇到了同样的问题,但是我通过将compileSdkVersion的版本更改为最新版本29,并将targetSdkVersion的版本更改为最新版本29成功解决了该问题。
转到gradile.build文件并更改compilesdkversion和targetdkversion。
答案 12 :(得分:1)
找到了一个简洁的插件来解决此问题: cordova-android-support-gradle-release
cordova插件添加cordova-android-support-gradle-release --variable ANDROID_SUPPORT_VERSION = 27. + --save
答案 13 :(得分:0)
buildscript {
project.ext {
supportLibVersion = '27.1.1'
compileVersion = 28
minSupportedVersion = 22
}
}
并设置依赖项:
implementation "com.android.support:appcompat-v7:$project.supportLibVersion"
答案 14 :(得分:0)
就我而言,此错误是在我使用时发生的
implementation 'com.android.support:appcompat-v7:+'
implementation 'com.android.support:design:+'
图书馆与Google一起
implementation 'com.google.android.material:material-components:+'
图书馆。如果您的项目属于这种情况,我强烈建议您从项目中完全删除google material组件库。
答案 15 :(得分:0)
就我而言,在将compileSdkVersion更新为29时,我在AndroidStudio 4.1.1中遇到此错误。
如果您在build.gradle中有从属项目,那么您要做的就是在从属项目的build.gradle中也更新相同的compileSdkVersion。
步骤:
对我有用:)
答案 16 :(得分:-1)
从 build.gradle
项目更新它们
classpath
'com.android.tools.build:gradle:4.0.1'
classpath
'com.google.gms:google-services:4.3.4'
并从 build.gradle
应用更新
compileSdkVersion
= 30
buildToolsVersion
= '29.0.3'
targetSdkVersion
= 29
最后一件事从 gradle
更新 gradle-wrapper.properties
distributionUrl=https://services.gradle.org/distributions/gradle-6.1.1-all.zip
答案 17 :(得分:-1)
在文件 gradle.properties 中将 useAndroidX 和 enableJetifier 更改为 false 并在我的情况下删除 Dependecies 中的 androidx