【发布时间】:2018-04-25 11:15:41
【问题描述】:
我正在尝试编译一个使用 JAR 文件中的旧版库的 APK。
我已经解决了关于 SO 的其他问题,但没有一个对我有帮助:1、2、3 和 4。我什至在 github 上发现了一个与我的痛苦有关的未解决问题 gradle/gradle/issues/1184 -- gradle -q dependencies 没有列出本地文件依赖项......这很糟糕,因为我浪费了很多时间认为文件依赖项没有被包括在内。
不管怎样,这是我项目的 build.gradle 文件:
// Project's build.gradle
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
}
allprojects {
repositories {
google()
jcenter()
}
}
这是应用的 build.gradle
// app's build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.mycompany.myapp"
minSdkVersion 24
targetSdkVersion 26
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation files('libs/mylib_java.jar')
}
问题是,当我运行./gradlew build 时,我得到一个错误,好像在 mylib_java.jar 中实现的包不存在......
任务 :app:compileDebugJavaWithJavac 失败 /home/donatoaz/my_apk_gradle/app/src/main/java/com/mycompany/myapp/MainActivity.java:18:错误:mycompany.mylib.audiofx 包不存在 导入 mycompany.mylib.audiofx.CustomEffect;
现在,我以前能够很好地编译 apk,但那是使用非常旧的 Android Studio,没有 gradle(我使用的是 API Level 19,Android 4.4)。
我现在使用 gradle 4.5.1。 PS 我没有使用 Android Studio,这是在无头的持续集成服务器中构建的。
【问题讨论】:
标签: java android gradle build.gradle