kim*_*a93 11 android gradle android-studio android-gradle-plugin
我有一个项目,我想在我的计算机上配置.
在其他计算机上它可以工作,但每当我使用0.5.2时,使用旧版Android Studio 0.4.0
问题是我启动应用程序后显示错误
构建脚本错误,找不到支持的Gradle DSL方法:'coreLibrary()'!可能的原因可能是:
- 您正在使用Gradle版本,其中方法不存在 - 您没有应用提供方法的Gradle插件 - 或者构建脚本中存在错误
但为了使它工作,我必须使用这个标志!我已经尝试在设置> Android编译器>"添加--core-library"标志中启用它,但它没用...
在gradle我有下一部分代码:
dexOptions {
coreLibrary true;
}
Run Code Online (Sandbox Code Playgroud)
此错误仅在激活此行之后显示...没有它们它不起作用...
我应该如何修复这个?也许这是因为不同的版本..如果是的话那么我应该如何写它才能使它工作?
更改为coreLibrary = true之后它运行-core-library标志使用后编译Gradle精细BUt stille需要....但我已经在设置中将其设置为true ...
它显示不是几乎相同的错误:
Error:Execution failed for task ':BusKg:preDexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
D:\Programms\Programms\adt-bundle-windows-x86_64-20131030\sdk\build-tools\android-4.4\dx.bat --dex --output D:\Android2\BUS.kg\marshrutka\BusKg\build\pre-dexed\debug\annotations-api-6.0.26-27e56569b50edbdd453f9bc0e568cde1fbfa621b.jar C:\Users\Viacheslav\.gradle\caches\modules-2\files-2.1\org.apache.tomcat\annotations-api\6.0.26\50aeafa144ed17913ed44d18ac61afd505a9e3e\annotations-api-6.0.26.jar
Error Code:
1
Output:
trouble processing "javax/xml/ws/WebServiceRef.class":
Ill-advised or mistaken usage of a core class (java.* or javax.*)
when not building a core library.
This is often due to inadvertently including a core library file
in your application's project, when using an IDE (such as
Eclipse). If you are sure you're not intentionally defining a
core class, then this is the most likely explanation of what's
going on.
However, you might actually be trying to define a class in a core
namespace, the source of which you may have taken, for example,
from a non-Android virtual machine project. This will most
assuredly not work. At a minimum, it jeopardizes the
compatibility of your app with future versions of the platform.
It is also often of questionable legality.
If you really intend to build a core library -- which is only
appropriate as part of creating a full virtual machine
distribution, as opposed to compiling an application -- then use
the "--core-library" option to suppress this error message.
If you go ahead and use "--core-library" but are in fact
building an application, then be forewarned that your application
will still fail to build or run, at some point. Please be
prepared for angry customers who find, for example, that your
application ceases to function once they upgrade their operating
system. You will be to blame for this problem.
If you are legitimately using some code that happens to be in a
core package, then the easiest safe alternative you have is to
repackage that code. That is, move the classes in question into
your own package namespace. This means that they will never be in
conflict with core system classes. JarJar is a tool that may help
you in this endeavor. If you find that you cannot do this, then
that is an indication that the path you are on will ultimately
lead to pain, suffering, grief, and lamentation.
1 error; aborting
Run Code Online (Sandbox Code Playgroud)
在此先感谢任何帮助......
小智 13
project.tasks.withType(com.android.build.gradle.tasks.Dex) {
additionalParameters=['--core-library']
}
Run Code Online (Sandbox Code Playgroud)
不正常工作,并得到错误:
无法为com.android.build.gradle.AppExtension类型的对象获取未知属性'com'.
我通过将其添加到android块来解决问题.
dexOptions {
preDexLibraries = false
additionalParameters=['--core-library']
}
Run Code Online (Sandbox Code Playgroud)
希望这对你有所帮助!
在Android Studio 1.1.0中,导航至:
文件 - >其他设置 - >默认设置 - >编译器 - > Android编译器
您将找到添加"--core-library"标志的复选框,但这似乎不起作用.
而是编辑文件app/build.gradle
禁用内部预先android {}使用
dexOptions {
preDexLibraries = false
}
Run Code Online (Sandbox Code Playgroud)
和修改Dex task使用
project.tasks.withType(com.android.build.gradle.tasks.Dex) {
additionalParameters=['--core-library']
}
Run Code Online (Sandbox Code Playgroud)
解决了这个问题.
编辑: app/build.gradle的完整内容
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "appId"
minSdkVersion 19
targetSdkVersion 21
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
preDexLibraries = false
javaMaxHeapSize "4g"
}
project.tasks.withType(com.android.build.gradle.tasks.Dex) {
additionalParameters=['--core-library']
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
exclude 'META-INF/MANIFEST.MF'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE.txt'
// more exclude files here if conflicts
}
}
Run Code Online (Sandbox Code Playgroud)
我解决了这个问题!不幸的是,我仅通过安装版本 Android Studio 0.4.2 解决了这个问题...其他方法没有帮助...可能以后,最好为新版本的 Android Studio 配置项目。
| 归档时间: |
|
| 查看次数: |
8436 次 |
| 最近记录: |