คำถามติดแท็ก build.gradle

ไฟล์ build.gradle อธิบายการกระทำเริ่มต้นและงานที่เปิดตัวโดยคำสั่ง 'gradle' ในโฟลเดอร์ที่เหมาะสม

8
ความแตกต่างระหว่างการนำไปใช้และคอมไพล์ใน Gradle คืออะไร
หลังจากการปรับปรุงเพื่อ Android 3.0 และสตูดิโอสร้างโครงการใหม่ผมสังเกตเห็นว่าในbuild.gradleมีวิธีใหม่ที่จะเพิ่มการอ้างอิงใหม่แทนการcompileมีimplementationและแทนที่จะมีtestCompiletestImplementation ตัวอย่าง: implementation 'com.android.support:appcompat-v7:25.0.0' testImplementation 'junit:junit:4.12' แทน compile 'com.android.support:appcompat-v7:25.0.0' testCompile 'junit:junit:4.12' อะไรคือความแตกต่างระหว่างพวกเขากับสิ่งที่ฉันควรใช้

30
ไลบรารี com.android.support ทั้งหมดต้องใช้ข้อมูลจำเพาะรุ่นที่แน่นอน
หลังจากอัปเดตเป็น android studio 2.3 ฉันได้รับข้อความแสดงข้อผิดพลาดนี้ ฉันรู้ว่ามันเป็นเพียงคำใบ้เมื่อแอปทำงานตามปกติ แต่มันแปลกจริงๆ ไลบรารี com.android.support ทั้งหมดต้องใช้ข้อมูลจำเพาะรุ่นที่แน่นอน (เวอร์ชั่นที่ผสมกันอาจทำให้เกิดข้อผิดพลาดขณะทำงาน) พบรุ่น 25.1.1, 24.0.0 ตัวอย่างเช่น com.android.support:animated-vector-drawable:25.1.1 และ com.android.support:mediarouter-v7:24.0.0 ระดับของฉัน: dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:25.1.1' compile 'com.android.support:support-v4:25.1.1' compile 'com.android.support:design:25.1.1' compile 'com.android.support:recyclerview-v7:25.1.1' compile 'com.android.support:cardview-v7:25.1.1' compile 'com.google.android.gms:play-services-maps:10.2.0' compile 'com.google.android.gms:play-services:10.2.0' …

16
วิธีเพิ่มการเพิ่มขึ้นของ. jar ในไฟล์ build.gradle
ดังนั้นฉันได้ลองเพิ่มการขึ้นอยู่กับไฟล์. jar ในไฟล์ build.gradle ของฉัน: apply plugin: 'java' sourceSets { main { java { srcDir 'src/model' } } } dependencies { runtime files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar') runtime fileTree(dir: 'libs', include: '*.jar') } และคุณจะเห็นว่าฉันเพิ่มไฟล์. jar ลงในโฟลเดอร์ referencedL ไลบรารีที่นี่: https://github.com/WalnutiQ/wAlnut/tree/version-2.3.1/referencedLibrary แต่ปัญหาคือเมื่อฉันเรียกใช้คำสั่ง: gradle build บนบรรทัดคำสั่งฉันได้รับข้อผิดพลาดต่อไปนี้: error: package com.google.gson does not exist import com.google.gson.Gson; นี่คือ repo …

27
การสร้างและเรียกใช้แอปผ่าน Gradle และ Android Studio ช้ากว่า Eclipse
ฉันมีหลายโครงการ (~ 10 โมดูล) ซึ่งสิ่งปลูกสร้างใช้เวลาประมาณ 20-30 วินาทีในแต่ละครั้ง เมื่อฉันกด Run ใน Android Studio ฉันต้องรอทุกครั้งที่จะสร้างแอปขึ้นใหม่ซึ่งช้ามาก เป็นไปได้ไหมที่จะสร้างกระบวนการใน Android Studio โดยอัตโนมัติ หรือคุณมีคำแนะนำเกี่ยวกับวิธีทำให้กระบวนการนี้เร็วขึ้น? ใน Eclipse ต้องขอบคุณการสร้างอัตโนมัติการรันโครงการเดียวกันบนอีมูเลเตอร์ใช้เวลาประมาณ 3-5 วินาที นี่คือไฟล์ build.gradle ของฉัน (โมดูลแอป): buildscript { repositories { maven { url 'http://repo1.maven.org/maven2' } } dependencies { classpath 'com.android.tools.build:gradle:0.4' } } apply plugin: 'android' dependencies { compile fileTree(dir: …

20
วิธีรวมแพ็คเกจ aar ภายนอกด้วยตนเองโดยใช้ Gradle Android Build System ใหม่
ฉันกำลังทดลองกับระบบ android build ใหม่และฉันพบปัญหาเล็กน้อย ฉันได้รวบรวมแพคเกจ aar ของฉันเองของ ActionBarSherlock ซึ่งฉันเรียกว่า 'actionbarsherlock.aar' สิ่งที่ฉันพยายามทำคือใช้ aar นี้เพื่อสร้าง APK สุดท้ายของฉัน ถ้าฉันรวมทั้งไลบรารี ActionBarSherlock ทั้งหมดเป็นโมดูล android-library ในโครงการหลักของฉันโดยใช้โครงการคอมไพล์ (': actionbarsherlock') ฉันสามารถสร้างได้สำเร็จโดยไม่มีปัญหาใด ๆ แต่ปัญหาของฉันคือฉันต้องการให้การอ้างอิงเป็นแพคเกจไฟล์ aar ด้วยตนเองถ้าฉันเป็น JAR ฉันก็ดูเหมือนจะไม่สามารถหาวิธีที่จะรวมไว้ในโครงการของฉันได้อย่างถูกต้อง ฉันพยายามใช้การกำหนดค่าการคอมไพล์แล้ว แต่ดูเหมือนจะไม่ทำงาน ฉันยังคงหาสัญลักษณ์ไม่พบในระหว่างการคอมไพล์ซึ่งบอกฉันว่า classes.jar จากแพ็คเกจ aar ไม่ได้ถูกรวมอยู่ใน classpath ไม่มีใครรู้ว่าไวยากรณ์เพื่อรวม aar แพ็คเกจเป็นไฟล์ด้วยตนเองหรือไม่? build.gradle buildscript { repositories { mavenCentral() } dependencies { classpath …

25
พบมากกว่าหนึ่งไฟล์ด้วยพา ธ อิสระของ OS 'META-INF / LICENSE'
เมื่อฉันสร้างแอพของฉันฉันได้รับข้อผิดพลาดดังต่อไปนี้: ข้อผิดพลาด: การดำเนินการล้มเหลวสำหรับงาน ': แอป: transformResourcesWithMergeJavaResForDebug' พบมากกว่าหนึ่งไฟล์ด้วยพา ธ อิสระของ OS 'META-INF / LICENSE' นี่คือไฟล์ build.gradle ของฉัน: apply plugin: 'com.android.application' apply plugin: 'kotlin-android' android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { applicationId "cn.sz.cyrus.kotlintest" minSdkVersion 14 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" javaCompileOptions{ annotationProcessorOptions{ includeCompileClasspath = true } } multiDexEnabled …

12
ฉันจะใช้ JAR ภายนอกในโครงการ Android ได้อย่างไร
ฉันได้สร้างโครงการ Android และเพิ่ม JAR ภายนอก (hessian-4.0.1.jar) ในโครงการของฉัน ฉันเพิ่ม JAR ลงในพา ธ บิลด์แล้วทำเครื่องหมายในการสั่งซื้อและส่งออก ดูเหมือนว่าการสั่งซื้อและส่งออกจะไม่ปรากฏและคลาสทั้งหมดจาก JAR ภายนอกจะหายไปเมื่อรันไทม์ มีเคล็ดลับในการรวมคลาสที่ต้องการจาก JAR ภายนอกเมื่อสร้างแอปพลิเคชัน Android โดยใช้ปลั๊กอิน Eclipse หรือไม่? ฉันไม่ต้องการใช้มดหรือ Maven

15
ฉันจะบอก Gradle ให้ใช้งาน JDK รุ่นใดรุ่นหนึ่งได้อย่างไร
ฉันไม่สามารถคิดได้ว่าจะทำงานนี้ได้อย่างไร สถานการณ์: ฉันมีแอปพลิเคชันที่สร้างขึ้นมา แอปพลิเคชันใช้ JavaFX สิ่งที่ฉันต้องการ ใช้ตัวแปร (กำหนดต่อเครื่องผู้พัฒนา) ซึ่งชี้ไปที่การติดตั้ง JDK ซึ่งจะใช้สำหรับการสร้างแอปพลิเคชันทั้งหมด / ทดสอบ / ... ฉันคิดเกี่ยวกับการมีgradle.propertiesไฟล์กำหนดตัวแปร สิ่งที่ต้องการ JAVA_HOME_FOR_MY_PROJECT=<path to my desired JDK> สิ่งที่ฉันไม่ต้องการ ชี้JAVA_HOMEไปที่ JDK ที่ต้องการ ฉันสามารถอยู่กับคำแนะนำมากมาย: โซลูชันที่กำหนดตัวแปรสภาพแวดล้อมระบบซึ่งฉันสามารถตรวจสอบได้ในสคริปต์ build.gradle ของฉัน ตัวแปรที่กำหนดใน gradle.properties การแทนที่ตัวแปร JAVA_HOME สำหรับบริบทการสร้างเท่านั้น (เช่นuse JAVA_HOME=<my special JDK path defined somewhere else defined>) อย่างอื่นที่ฉันไม่ได้คิด คำถาม: วิธีการโยงตัวแปร (เคยกำหนดไว้ว่าเป็นตัวแปรในgradle.properties, ตัวแปรสภาพแวดล้อมระบบ, ... …

15
ข้อผิดพลาด: ขัดแย้งกับการพึ่งพา 'com.google.code.findbugs: jsr305'
ฉันสร้างโครงการใหม่ในAndroid Studio 2.2 ดูตัวอย่าง 1ด้วยแอพ Android และโมดูลแบ็กเอนด์ด้วย Google Messaging นี่คือไฟล์แอพ: apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.xxx.xxx" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: …

21
Android Studio gradle ใช้เวลาในการสร้างนานเกินไป
โครงการAndroid Studioของฉันใช้ในการสร้างได้เร็วขึ้น แต่ตอนนี้ใช้เวลาในการสร้างนาน ความคิดใดที่อาจทำให้เกิดความล่าช้าได้ ฉันได้ลองhttps://stackoverflow.com/a/27171878/391401แล้วแต่ไม่มีผล ฉันไม่มี Anti virus ที่ทำงานอยู่ซึ่งอาจขัดขวางการสร้าง แอพของฉันมีขนาดไม่ใหญ่เท่านี้ (ประมาณ5MB ) และมันใช้ในการสร้างภายในไม่กี่วินาที แต่ไม่แน่ใจว่ามีอะไรเปลี่ยนแปลง 10:03:51 Gradle build finished in 4 min 0 sec 10:04:03 Session 'app': running 10:10:11 Gradle build finished in 3 min 29 sec 10:10:12 Session 'app': running 10:20:24 Gradle build finished in 3 min 42 sec 10:28:18 …

30
การรวมกันของรายการวัสดุ Android และ appcompat ล้มเหลว
ฉันมีเกรดต่อไป dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:28.0.0-rc01' 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' implementation 'com.google.android.material:material:1.0.0-rc01' } แต่เมื่อฉันต้องการสร้างแอพฉันจะได้รับบันทึกต่อไป: Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0-alpha3] AndroidManifest.xml:22:18-91 is also present at [androidx.core:core:1.0.0-alpha3] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory). Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:5:5-19:19 to override. Okey! …

7
จะสร้างไฟล์ wrapper Gradle ได้อย่างไร / เมื่อไหร่?
ฉันพยายามที่จะเข้าใจว่า Gradle Wrapper ทำงานอย่างไร ใน repos หลายแหล่งฉันเห็นโครงสร้างต่อไปนี้: projectRoot/ src/ build.gradle gradle.properties settings.gradle gradlew gradlew.bat gradle/ wrapper/ gradle-wrapper.jar gradle-wrapper.properties คำถามของฉัน: วิธีการหนึ่ง / เมื่อสร้างgradlew/gradlew.bat ? คุณควรจะสร้างมันขึ้นมาเพียงครั้งเดียวเมื่อสร้างโปรเจ็กต์ครั้งแรกคุณสร้างมันขึ้นมาทุกครั้งที่คุณยอมรับ / ผลักดันการเปลี่ยนแปลงหรือไม่? และพวกเขาสร้างอย่างไร คำถามเดียวกันข้างต้น แต่สำหรับgradle/wrapper/*ไฟล์ ( gradle-wrapper.jarและgradle-wrapper.properties )? บางครั้งฉันก็เห็น*.gradleไฟล์อื่น ๆในโครงการgradleไดเรกทอรีไฟล์ Gradle เพิ่มเติมเหล่านี้คืออะไรและพวกมันเป็นตัวแทน / ทำอะไร? ปลั๊กอินที่กำหนดเอง? อะไรคือความแตกต่างของคุณสมบัติที่ไปsettings.gradleเทียบกับสิ่งที่ควรกำหนดไว้ภายในgradle.properties?


30
DELETE_FAILED_INTERNAL_ERROR เกิดข้อผิดพลาดขณะติดตั้ง APK
ฉันใช้Android Studio 2.2ดูตัวอย่าง ฉันกำลังเผชิญกับปัญหา ความล้มเหลว: การติดตั้งล้มเหลว apk ไม่ถูกต้อง ข้อผิดพลาด: ขณะติดตั้ง apk ฉันได้ทำการเปลี่ยนแปลงใน build.gradle แต่ไม่สามารถ retrack ใหม่ได้โปรดแนะนำฉันทางออก ???

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ไฟล์คืออะไร?

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