今日はスタジオ3.0ベータ2.0バージョンをダウンロードしました。その後、既存のプロジェクトを開いていくつかの困難に直面しました。そのほとんどはGoogleとStack Overflowの助けを借りて解決できましたが、これはできません。
Error:Execution failed for task ':app:transformClassesWithDexBuilderForDebug'.
> com.Android.build.api.transform.TransformException: org.gradle.tooling.BuildException: com.Android.dx.cf.code.SimException: invalid opcode ba (invokedynamic requires --min-sdk-version >= 26)
アプリのグラドルも投稿する
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
applicationId "com.intersoft.snappy"
minSdkVersion 19
targetSdkVersion 22
multiDexEnabled true
versionCode 1
versionName "1.0"
}
buildTypeMatching 'dev', 'debug'
buildTypeMatching 'qa', 'debug'
buildTypeMatching 'rc', 'release'
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
sourceSets { main { assets.srcDirs = ['src/main/assets', 'src/main/assets/']
} }
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
}
}
repositories {
mavenCentral()
mavenLocal()
jcenter()
maven { url "https://plugins.gradle.org/m2/" }
maven { url "https://s3.amazonaws.com/repo.commonsware.com" }
maven { url "https://jitpack.io" }
maven { url 'https://dl.bintray.com/ashokslsk/CheckableView' }
maven { url "https://maven.google.com" }
}
Android {
useLibrary 'org.Apache.http.legacy'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.Android.support:appcompat-v7:26.0.1'
implementation 'com.github.mrengineer13:snackbar:1.2.0'
implementation 'com.Android.support:recyclerview-v7:26.0.1'
implementation 'com.Android.support:cardview-v7:26.0.1'
implementation 'com.Android.support:design:26.0.1'
implementation 'com.Android.support:percent:26.0.1'
implementation 'dev.dworks.libs:volleyplus:+'
implementation 'com.google.guava:guava:21.0'
implementation 'com.facebook.fresco:fresco:1.0.1'
implementation 'com.github.bumptech.glide:glide:3.7.0'
implementation 'com.wdullaer:materialdatetimepicker:3.1.1'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.github.stfalcon:frescoimageviewer:0.4.0'
implementation 'com.github.piotrek1543:CustomSpinner:0.1'
implementation 'com.Android.support:multidex:1.0.2'
implementation 'com.github.satyan:sugar:1.4'
implementation 'com.hedgehog.ratingbar:app:1.1.2'
implementation project(':sandriosCamera')
implementation('org.Apache.httpcomponents:httpmime:4.2.6') {
exclude module: 'httpclient'
}
implementation 'com.googlecode.json-simple:json-simple:1.1'
}
afterEvaluate {
tasks.matching {
it.name.startsWith('dex')
}.each { dx ->
if (dx.additionalParameters == null) {
dx.additionalParameters = ['--multi-dex']
} else {
dx.additionalParameters += '--multi-dex'
}
}
}
subprojects {
project.plugins.whenPluginAdded { plugin ->
if ("com.Android.build.gradle.AppPlugin".equals(plugin.class.name)) {
project.Android.dexOptions.preDexLibraries = false
} else if
("com.Android.build.gradle.LibraryPlugin".equals(plugin.class.name)) {
project.Android.dexOptions.preDexLibraries = false
}
}
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
}
}
apply plugin: 'com.jakewharton.hugo'
また、私の別のモジュールgradle
apply plugin: 'com.Android.library'
apply plugin: 'com.jfrog.bintray'
apply plugin: 'com.github.dcendents.Android-maven'
buildscript {
repositories {
jcenter()
jcenter()
maven { url "https://maven.google.com" }
}
dependencies {
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7'
classpath 'com.github.dcendents:Android-maven-gradle-plugin:1.4.1'
}
}
group = 'com.sandrios.Android'
version = '1.0.8'
ext {
PUBLISH_GROUP_ID = 'com.sandrios.Android'
PUBLISH_ARTIFACT_ID = 'sandriosCamera'
PUBLISH_VERSION = '1.0.8'
PUBLISH_CODE = 9
}
Android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
minSdkVersion 19
targetSdkVersion 25
versionCode PUBLISH_CODE
versionName PUBLISH_VERSION
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError false
}
}
task generateSourcesJar(type: Jar) {
from Android.sourceSets.main.Java.srcDirs
classifier 'sources'
}
task generateJavadocs(type: Javadoc) {
failOnError false
source = Android.sourceSets.main.Java.srcDirs
classpath += project.files(Android.getBootClasspath()
.join(File.pathSeparator))
}
task generateJavadocsJar(type: Jar) {
from generateJavadocs.destinationDir
classifier 'javadoc'
}
generateJavadocsJar.dependsOn generateJavadocs
artifacts {
archives generateSourcesJar
archives generateJavadocsJar
}
install {
repositories.mavenInstaller {
pom.project {
name PUBLISH_GROUP_ID
description 'Simple integration of universal camera in Android for easy image and video capture.'
url 'https://github.com/sandrios/sandriosCamera'
inceptionYear '2016'
packaging 'aar'
version PUBLISH_VERSION
scm {
connection 'https://github.com/sandrios/sandriosCamera.git'
url 'https://github.com/sandrios/sandriosCamera'
}
developers {
developer {
name 'arpitgandhi9'
}
}
}
}
}
bintray {
Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
user = properties.getProperty('bintray.user')
key = properties.getProperty('bintray.apikey')
configurations = ['archives']
pkg {
repo = 'Android'
name = 'sandriosCamera'
userOrg = 'sandriosstudios'
desc = 'Android solution to simplify work with different camera apis.'
licenses = ['MIT']
labels = ['Android', 'camera', 'photo', 'video']
websiteUrl = 'https://github.com/sandrios/sandriosCamera'
issueTrackerUrl = 'https://github.com/sandrios/sandriosCamera/issues'
vcsUrl = 'https://github.com/sandrios/sandriosCamera.git'
version {
name = PUBLISH_VERSION
vcsTag = PUBLISH_VERSION
desc = 'Minor fixes.'
released = new Date()
}
}
}
repositories {
jcenter()
}
dependencies {
implementation 'com.Android.support:support-v4:26.0.0'
implementation 'com.Android.support:appcompat-v7:26.0.0'
implementation 'com.Android.support:recyclerview-v7:26.0.0'
implementation 'com.github.bumptech.glide:glide:3.6.1'
implementation 'com.yalantis:ucrop:2.2.0'
implementation 'gun0912.ted:tedpermission:1.0.2'
}
また、プロジェクトレベルのgradle
// Top-level build file where you can add configuration options common to
all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.0-beta2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
このエラーを取り除くのを手伝ってください
私の答えを見つけました、私にとっては個人的に使用していました
implementation "com.google.guava:guava:23.0"
の代わりに
implementation "com.google.guava:guava:23.0-Android"
それは重要な部分です:
アプリモジュールのように追加されていないモジュールのbuild.gradleにこれを追加する必要があります。
Android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
また、プラグインのリポジトリを追加するのを忘れました:
buildscript {
repositories {
jcenter()
google()
}
}
あなたと同じエラー(SimException
)がありました。 Android cleanアーキテクチャプロジェクトに3つのモジュールがありました。
ソリューション
File/Project Structure...
に移動します
モジュールのソースとターゲットの互換性が同じであることを確認してください(この場合は1.8)
ライブラリをcompileOptions Java 1.8
で追加しましたが、私のメインプロジェクトではいけません。追加の修正:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
私は同じ問題を抱えていました。最近.gradle
キャッシュフォルダーを削除し、Android StudioとSDKを再インストールしました。最終的に問題をgit bisect
しようとすると、それはなくなりました。私はこれがなぜ起こったかについて推測することしかできませんが、古いバージョンのビルドツールとSDKをダウンロードし、それらの古いツールを使用してコードのバージョンをビルド(およびおそらくキャッシュ)すると、 tは問題を引き起こします。
これは、新しい(API 26?)ビルドツールがソースコードをビルドする方法にある種のバグを指しているため、この問題が発生し、他のソリューションが機能しない場合の推奨事項は、 SDKバージョンを25以下に設定し、必要なビルドツールをインストールし、それらを使用してコードをコンパイルしてから、26以上のビルドツールに戻します。