คำถามติดแท็ก android-gradle-plugin

ปลั๊กอิน Android Gradle เป็นระบบสร้างมาตรฐานของ Android มันถูกใช้เป็นระบบสร้างการสำรองข้อมูลโดย Android Studio

30
ข้อผิดพลาดของ Android: การดำเนินการล้มเหลวสำหรับงาน ': app: transformClassesWithDexForRelease'
ปัญหาคือฉันสามารถเรียกใช้แอพของฉันเมื่อฉันเปลี่ยนเป็นdebugโหมด แต่มันล้มเหลวเมื่อฉันเปลี่ยนเป็นreleaseโหมด ข้อยกเว้น: **FAILURE: Build failed with an exception.** > Execution failed for task ':app:transformClassesWithDexForRelease'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1 เมื่อฉันรันคำสั่ง gradle build ด้วย stacktrace แล้วนี่คือสิ่งที่ฉันได้รับ ./gradlew app:transformClassesWithDexForRelease --stacktrace > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with …

18
ปลั๊กอินเก่าเกินไปโปรดอัปเดตเป็นเวอร์ชันล่าสุดหรือตั้งค่าตัวแปรสภาพแวดล้อม ANDROID_DAILY_OVERRIDE เป็น
วันนี้ฉันเพิ่งนำเข้าแอพตัวอย่างจาก Android SDK เป็นโมดูลในโครงการของฉัน (การวิเคราะห์) และทันใดนั้นฉันก็พบข้อผิดพลาดการไล่ระดับสีเมื่อฉันพยายามซิงค์: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE envrinment variable to... นี่คือgradleไฟล์แอพของฉัน: apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.0" defaultConfig { applicationId "xxx.xxxxxx.xxxxx" versionCode 1 versionName '1' minSdkVersion 9 targetSdkVersion 22 versionCode 1 versionName '1' } …

2
ไวยากรณ์สำหรับการเขียนความคิดเห็นในไฟล์ build.gradle คืออะไร
มองดูbuild.gradleไฟล์นี้ apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "package.myapp" minSdkVersion 19 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.nineoldandroids:library:2.4.0' } เกิดอะไรขึ้นถ้าผมอยากจะเขียนความคิดเห็นเกี่ยวกับทำไมผมเลือกห้องสมุดนี้สำหรับโครงการนี้ , ไวยากรณ์สำหรับการเขียนความคิดเห็นในbuild.gradleไฟล์คืออะไร?

4
เหตุใดการสร้างประเภทจึงแตกต่างจากรสชาติของผลิตภัณฑ์
คำนำ: นี่ไม่ใช่คำถามเกี่ยวกับวิธีใช้ชนิดบิลด์และรสชาติของผลิตภัณฑ์ในแอพ Android ฉันเข้าใจแนวคิดพื้นฐานที่เกี่ยวข้อง คำถามนี้เกี่ยวกับการพยายามทำความเข้าใจกับการกำหนดค่าที่ควรระบุในรูปแบบบิลด์ซึ่งการกำหนดค่าควรจะระบุในรสชาติของผลิตภัณฑ์และความแตกต่างใด ๆ ที่จำเป็นจริงๆ สัปดาห์นี้ฉันได้เรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดค่าแบบค่อยเป็นค่อยไปสำหรับแอพ Android ตอนแรกฉันคิดว่าฉันมีความสามารถที่ดีในการสร้างประเภทและรสชาติของผลิตภัณฑ์ แต่ยิ่งฉันได้รับเอกสารมากเท่าไหร่ฉันก็ยิ่งรู้ว่าความแตกต่างระหว่างคนทั้งสองไม่ชัดเจนสำหรับฉันเลย เนื่องจากมีลำดับชั้นที่กำหนดไว้อย่างดี (ในแง่ที่ว่าคุณสมบัติที่ระบุในบิลด์ประเภทมีความสำคัญมากกว่าที่ระบุในรสชาติผลิตภัณฑ์) ฉันไม่เข้าใจว่าทำไมจึงมีความจำเป็นที่จะต้องแยกแยะระหว่างบิลด์ประเภทและรสชาติผลิตภัณฑ์เลย จะเป็นการดีกว่าที่จะรวมคุณสมบัติและวิธีการทั้งหมดลงในวัตถุ DSL สำหรับรสชาติของผลิตภัณฑ์และจากนั้นให้ถือว่าประเภทการสร้างเป็นมิติเริ่มต้นของรสชาติ ตัวอย่างที่เป็นรูปธรรมบางอย่างที่นำไปสู่ความสับสนของฉัน: signingConfigคุณสมบัติสามารถตั้งค่าในการสร้างทั้งชนิดและรสชาติสินค้า ... แต่minifyEnabled(และผมถือว่าshrinkResources?) เท่านั้นที่สามารถกำหนดค่าในการสร้างประเภท applicationIdสามารถระบุได้เฉพาะในรสชาติผลิตภัณฑ์ ... และapplicationIdSuffixสามารถระบุได้เฉพาะในประเภทบิลด์!? คำถามจริง : จากตัวอย่างข้างต้น: มีความแตกต่างที่ชัดเจนระหว่างบทบาทของประเภทการสร้างและรสชาติของผลิตภัณฑ์หรือไม่ ถ้าอย่างนั้นเป็นวิธีที่ดีที่สุดที่จะเข้าใจมันคืออะไร? ถ้าไม่เป็นแผนในที่สุดจะรวมประเภทการสร้างและรสชาติของผลิตภัณฑ์เป็นวัตถุ DSL ที่กำหนดค่าได้หรือไม่

30
com.google.android.gms: มีการร้องขอ play-services-measure-base จากห้องสมุดอื่น ๆ
ฉันอัปเดตเป็น gradle 4.0.1 และเริ่มได้รับข้อผิดพลาดต่อไปนี้ ห้องสมุด com.google.android.gms: play-services-measure-base กำลังถูกร้องขอโดยห้องสมุดอื่น ๆ อีกมากมายที่ [[15.0.4,15.0.4]] แต่แก้ไขเป็น 15.0.2 ปิดใช้งานปลั๊กอินและตรวจสอบโครงสร้างการพึ่งพาของคุณโดยใช้. /gradlew: แอพ: การอ้างอิง โครงการของฉันไม่ได้ใช้การพึ่งพานั้นดังนั้นฉันจึงค้นหาทั่วโลกและมันขึ้นมาข้างในเท่านั้น สร้าง / ปานกลาง / ผ้าสำลีแคช / maven.google / ดอทคอม / Google / Android / กรัม / กลุ่ม index.xml เช่นเดียวกับสายนี้ <play-services-measurement-base versions="15.0.0,15.0.2"/> ดังนั้นฉันจึงพยายามลบโฟลเดอร์สร้างและทำความสะอาดโครงการ แต่จะสร้างใหม่ด้วยค่าเดียวกัน: / ดังนั้นข้อผิดพลาดยังคงอยู่

22
ViewModelProviders เลิกใช้แล้วใน 1.1.0
มองไปที่เอกสารของ GoogleสำหรับViewModelพวกเขาแสดงให้เห็นด้านล่างโค้ดตัวอย่างเกี่ยวกับวิธีการที่จะได้รับViewModel: val model = ViewModelProviders.of(this).get(MyViewModel::class.java) เมื่อใช้การพึ่งพาล่าสุดไม่มีระดับดังกล่าวandroid.arch.lifecycle:extensions:1.1.1ViewModelProviders ไปที่เอกสารสำหรับViewModelProvidersฉันเห็นความคิดเห็นว่า: คลาสนี้เลิกใช้แล้วในระดับ API 1.1.0 ใช้ ViewModelProvider.AndroidViewModelFactory ปัญหาคือเมื่อพยายามใช้ViewModelProvider.AndroidViewModelFactoryไม่พบofวิธีการที่เทียบเท่าเพื่อรับอินสแตนซ์ของไฟล์ViewModel. สิ่งที่ฉันพยายามทำ: ViewModelProvider.AndroidViewModelFactory.getInstance(application).create(PlayerViewHolder::class.java) ดังนั้นชื่อของเมธอดcreateฉันจึงได้รับอินสแตนซ์ใหม่ของ ViewModel ทุกครั้งที่เรียกมันซึ่งไม่ใช่สิ่งที่ฉันเป็น มีความคิดใดบ้างที่จะแทนที่โค้ดที่เลิกใช้งานด้านบน

23
ข้อผิดพลาด“ ไฟล์ google-services.json หายไปจากโฟลเดอร์รูทของโมดูล ปลั๊กอินบริการของ Google ไม่สามารถทำงานได้หากไม่มี”
classpath 'com.google.gms:google-services:1.5.0-beta2'ฉันปรับปรุงโครงการของฉันไปล่าสุดบริการเล่น ฉันยังใช้ playervices เวอร์ชันล่าสุดในไฟล์ app.gradle เป็น: compile 'com.google.android.gms:play-services-location:8.3.0' compile 'com.google.android.gms:play-services-gcm:8.3.0' อย่างไรก็ตามเมื่อฉันคอมไพล์ Gradle พ่นข้อยกเว้นดังนี้ Error:Execution failed for task ':app:processDebugGoogleServices'. > File google-services.json is missing from module root folder. The Google Services Plugin cannot function without it.

14
วิธีการตั้งค่า versionName ในชื่อไฟล์ APK โดยใช้ gradle
ฉันกำลังพยายามตั้งค่าหมายเลขรุ่นเฉพาะในชื่อไฟล์ APK ที่สร้างโดยอัตโนมัติแบบ gradle ตอนนี้ gradle สร้างแต่ผมต้องการให้มีลักษณะบางอย่างเช่นmyapp-release.apkmyapp-release-1.0.apk ฉันได้ลองเปลี่ยนชื่อตัวเลือกที่ดูยุ่ง ๆ มีวิธีง่าย ๆ ในการทำเช่นนี้? buildTypes { release { signingConfig signingConfigs.release applicationVariants.each { variant -> def file = variant.outputFile variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk")) } } ฉันลองใช้รหัสด้านบนโดยไม่มีโชค ข้อเสนอแนะใด ๆ (ใช้ gradle 1.6)

17
ไม่สามารถค้นหาหรือโหลดคลาสหลัก org.gradle.wrapper.GradleWrapperMain
ฉันทำความสะอาดทั้งโครงการโดยการลบไดเรกทอรีท้องถิ่นเช่น~/.gradle, ~/.m2 ~./androidและ~/workspace/project/.gradleและ chosing File -> Invalidate Caches / Restart...ใน Android สตูดิโอ ตอนนี้การประมวลผลคำสั่ง./gradlewจะนำไปสู่เอาต์พุตต่อไปนี้: usr$ ./gradlew tasks Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain ไม่จำเป็นต้องบอกว่าฉันลบไปมากเกินไปคำถามคือจะซ่อมได้อีกครั้งได้อย่างไร คุณมีความคิดวิธีการแก้ไขปัญหานี้หรือไม่?

30
ข้อผิดพลาด: การดำเนินการล้มเหลวสำหรับงาน ': แอป: สะอาด' ไม่สามารถลบไฟล์ได้
ฉันกำลังพยายามสร้างโครงการ Android Studio Gradle ของฉันใหม่ (ที่มีรหัส Kotlin ส่วนใหญ่) แต่มันก็เริ่มโยนUnableToDeleteFileExceptionระหว่างกระบวนการทำความสะอาด / สร้างใหม่: Execution failed for task ':app:clean'. > Unable to delete file: C:\Users\User\KotlinGameEngine\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.0.1\jars\classes.jar สิ่งนี้เริ่มต้นขึ้นหลังจากที่ฉันพยายามเปลี่ยนโครงสร้างแพ็คเกจของโครงการ น่าเสียดายที่ฉันทำได้โดยเปลี่ยนชื่อและย้ายโฟลเดอร์ซอร์สแทนที่จะทำการเปลี่ยนใหม่ผ่าน Android Studio ซึ่งเป็นแนวคิดที่ไม่ดี ฉันค้นหาวิธีแก้ไขปัญหานี้ตลอดทั้งวันและสิ่งเหล่านี้เป็นสิ่งที่ฉันพยายามทำเพื่อประโยชน์: ทำการซิงค์แบบ Gradle การติดตั้ง Java JRE และ Java SDK อีกครั้ง การติดตั้ง Android Studio เวอร์ชันล่าสุดอีกครั้ง (1.4); ย้อนกลับไปเป็นเวอร์ชั่น AS ก่อนหน้า (1.3); การทำให้แคช AS เป็นโมฆะและเริ่มต้นใหม่; การลบgradleและ.gradleไดเรกทอรีในไดเรกทอรีโครงการ …

30
เสร็จสิ้นด้วยค่าการออกที่ไม่ใช่ศูนย์
ฉันกำลังพยายามนำเข้าโครงการของฉัน แต่เมื่อฉันเรียกใช้แอปพลิเคชันฉันได้รับข้อผิดพลาดต่อไปนี้: Error: Execution failed for task ':app:processDebugResources'. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Users\Vishnu Ruhela\AppData\Local\Android\sdk\build-tools\21.1.2\aapt.exe'' finished with non- zero exit value 1 นี่คือไฟล์ gradle ของฉัน apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.example.vishnuruhela.signup" minSdkVersion 15 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release …

20
android studio 0.4.2: การซิงค์โครงการ Gradle ผิดพลาด
หลังจากอัปเดตเป็น 0.4.2 ฉันได้รับข้อผิดพลาดนี้เมื่อเปิดโครงการ: 'การซิงค์โครงการ Gradle ล้มเหลว ฟังก์ชั่นพื้นฐาน (เช่นการแก้ไขการดีบัก) จะไม่ทำงานอย่างเหมาะสม ' บันทึกเหตุการณ์แสดงสิ่งนี้: Error occurred during initialization of VM Could not reserve enough space for object heap Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. at org.gradle.launcher.daemon.bootstrap.DaemonGreeter.parseDaemonOutput(DaemonGreeter.java:34) at org.gradle.launcher.daemon.client.DefaultDaemonStarter.startProcess(DefaultDaemonStarter.java:109) at org.gradle.launcher.daemon.client.DefaultDaemonStarter.startDaemon(DefaultDaemonStarter.java:90) at org.gradle.launcher.daemon.client.DefaultDaemonConnector.startDaemon(DefaultDaemonConnector.java:95) …

30
Android studio 3.0: ไม่สามารถแก้ไขการพึ่งพาสำหรับ: app @ dexOptions / compileClasspath ': ไม่สามารถแก้ไขโครงการ: แอนิเมชั่น
ฉันย้ายไปยัง Android studio 3.0 ดังนั้นโครงการจึงไม่สามารถรวบรวมโมดูลชื่อ ": animator" และมันแสดงข้อผิดพลาดนี้ให้ฉัน: Error:Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project :animators. <a href="openFile:/home/mobilepowered/MobilePowered/MyInnovalee/trunk17-10-2017/app/build.gradle">Open File</a><br><a href="Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project :animators.">Show Details</a> และแสดงรายละเอียดให้บันทึกนี้: Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project :animators. Could not resolve project …

4
Android Studio build ผลิตภัณฑ์รสชาติใดตามค่าเริ่มต้นใน build.gradle
เรามีโครงการ Android ที่ใช้ระบบการสร้าง Gradle ใหม่และเราใช้ Android Studio เป็นเครื่องมือในการพัฒนา เมื่อมีรสชาติของผลิตภัณฑ์หลายอย่างที่ระบุไว้build.gradleเราจะสังเกตเห็นว่า Android Studio สร้างตัวแรกที่ระบุตามตัวอักษร มีวิธีที่จะบอก Android Studio ในการสร้างและทดสอบเฉพาะรสชาติของผลิตภัณฑ์ในระหว่างการพัฒนาหรือไม่?

15
การเพิ่มไฟล์. aar ในเครื่องให้กับ Gradle บิลด์โดยใช้“ flatDirs” ไม่ทำงาน
ฉันตระหนักถึงคำถามนี้: การเพิ่มไฟล์. aar ในเครื่องให้กับรุ่น gradle ของฉันแต่โซลูชันไม่ทำงานสำหรับฉัน ฉันพยายามเพิ่มคำสั่งนี้ไปยังระดับสูงสุดของbuild.gradleไฟล์ของฉัน: repositories { mavenCentral() flatDir { dirs 'libs' } } ฉันยังใส่slidingmenu.aarไฟล์/libsและอ้างอิงในdependenciesส่วน: compile 'com.slidingmenu.lib:slidingmenu:1.0.0@aar'แต่มันไม่ทำงานเลย ฉันพยายามcompile files('libs/slidingmenu.aar')เช่นกัน แต่ไม่มีโชค ฉันพลาดอะไรไป ความคิดใด ๆ PS Android Studio 0.8.2

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.