android studio1.0.2本地路径不存在

时间:2014-12-27 13:02:22

标签: android android-studio android-source

我的英语不好:),抱歉。

我使用工作室来构建Android Contacts apk,包括Contacts,ContactsCommon(lib)和PhoneCommon()。

现在,当我运行app时,本地路径不存在。

Android SDK工具24.0.2(最新版)

的build.gradle(项目)

  

classpath' com.android.tools.build:gradle:1.0.0'

gradle-wrapper.properties

  

distributionUrl = HTTPS://services.gradle.org/distributions/gradle-2.2.1-all.zip

我尝试遵循方法:

https://stackoverflow.com/q/27436269/4397112

https://stackoverflow.com/a/21842216/4397112

https://stackoverflow.com/a/19667599/4397112

等。

在我项目的根目录中,运行:

  

gradlew clean packageDebug

     
      
  • 出了什么问题:任务执行失败':app:preDexDebug'。

         
        

    com.android.ide.common.internal.LoggedErrorException:无法运行命令:         D:\ Development \ Android \ Sdk \ build-tools \ 21.1.2 \ dx.bat -JXmx4g --dex --output D:\ AndroidStudioProjects \ Contacts \ app \ build \ intermediates \ pre-dexed \ debug \ classes-jarjar_framework -5c27d5f8ec6e579f128703ae9232253b06c7d5     2e.jar     d:\ AndroidStudioProjects \联系人\应用\构建\中间体\分解-AAR \联系人\ ContactsCommon \未指定\库\类 - jarjar_framework.jar     错误代码:         2输出:

      
    trouble writing output: Too many method references: 81922; max is 65536.
    You may try using --multi-dex option.
    References by package:
        27 android
       147 android.accessibilityservice
       577 android.accounts
        33 android.alsa
       682 android.animation
        11 android.annotation
      5500 android.app
       542 android.app.admin
       401 android.app.backup
       140 android.app.job
        53 android.app.trust
        89 android.app.usage
       134 android.appwidget
      1750 android.bluetooth
       222 android.bluetooth.le
      1879 android.content
      1537 android.content.pm
       554 android.content.res
       532 android.database
       498 android.database.sqlite
       117 android.ddm
       168 android.drm
        30 android.emoji
        23 android.filterfw
       817 android.filterfw.core
        26 android.filterfw.format
        42 android.filterfw.geometry
        46 android.filterfw.io
        83 android.filterpacks.base
       410 android.filterpacks.imageproc
         6 android.filterpacks.numeric
        17 android.filterpacks.performance
        18 android.filterpacks.text
        29 android.filterpacks.ui
        18 android.filterpacks.videoproc
        21 android.filterpacks.videosink
        86 android.filterpacks.videosrc
       223 android.gesture
      1458 android.graphics
      1337 android.graphics.drawable
        40 android.graphics.drawable.shapes
        87 android.graphics.pdf
       532 android.hardware
       283 android.hardware.camera2
        19 android.hardware.camera2.dispatch
       339 android.hardware.camera2.impl
       462 android.hardware.camera2.legacy
        25 android.hardware.camera2.marshal
       213 android.hardware.camera2.marshal.impl
       137 android.hardware.camera2.params
       153 android.hardware.camera2.utils
       247 android.hardware.display
       431 android.hardware.hdmi
       167 android.hardware.input
       388 android.hardware.location
       174 android.hardware.soundtrigger
       231 android.hardware.usb
       442 android.inputmethodservice
      1053 android.location
      3957 android.media
       293 android.media.audiofx
        44 android.media.audiopolicy
        82 android.media.browse
        48 android.media.effect
        39 android.media.effect.effects
       141 android.media.projection
       645 android.media.session
       964 android.media.tv
       144 android.mtp
      2232 android.net
       102 android.net.dhcp
       408 android.net.http
       106 android.net.nsd
       819 android.net.wifi
       250 android.net.wifi.p2p
        96 android.net.wifi.p2p.nsd
         1 android.net.wimax
       455 android.nfc
        73 android.nfc.cardemulation
       175 android.nfc.tech
      1728 android.opengl
      2778 android.os
       266 android.os.storage
       874 android.preference
       655 android.print
         6 android.print.pdf
       169 android.printservice
       631 android.provider
      1854 android.renderscript
        35 android.sax
       272 android.security
       160 android.service.dreams
        76 android.service.fingerprint
        85 android.service.media
       275 android.service.notification
        39 android.service.persistentdata
         3 android.service.restrictions
        30 android.service.textservice
        70 android.service.trust
       199 android.service.voice
       137 android.service.wallpaper
       149 android.speech
       133 android.speech.srec
       579 android.speech.tts
        32 android.system
      1010 android.telecom
       958 android.telephony
        48 android.telephony.cdma
        14 android.telephony.gsm
        52 android.test
       812 android.text
       116 android.text.format
       374 android.text.method
       375 android.text.style
        49 android.text.util
       556 android.transition
       922 android.util
      5239 android.view
       591 android.view.accessibility
       274 android.view.animation
       473 android.view.inputmethod
       139 android.view.textservice
       934 android.webkit
      8709 android.widget
        19 com.android.i18n.phonenumbers
         2 com.android.i18n.phonenumbers.geocoding
       111 com.android.ims
       469 com.android.ims.internal
        24 com.android.internal
         7 com.android.internal.annotations
      1298 com.android.internal.app
        98 com.android.internal.appwidget
       130 com.android.internal.backup
        92 com.android.internal.content
        23 com.android.internal.database
         8 com.android.internal.http
        78 com.android.internal.http.multipart
       106 com.android.internal.inputmethod
        78 com.android.internal.location
        12 com.android.internal.logging
        51 com.android.internal.net
       961 com.android.internal.os
        23 com.android.internal.os.storage
       156 com.android.internal.policy
        27 com.android.internal.preference
       184 com.android.internal.statusbar
       403 com.android.internal.telecom
       969 com.android.internal.telephony
        94 com.android.internal.textservice
         3 com.android.internal.transition
       632 com.android.internal.util
       499 com.android.internal.view
        17 com.android.internal.view.animation
       616 com.android.internal.view.menu
      1723 com.android.internal.widget
       232 com.android.internal.widget.multiwaveview
        42 com.android.net
        20 com.android.okhttp
         3 com.android.org.bouncycastle.asn1.x509
         2 com.android.org.bouncycastle.util.encoders
         9 com.android.org.bouncycastle.util.io.pem
         9 com.android.org.bouncycastle.x509
        28 com.android.org.conscrypt
        69 com.android.server
         9 com.android.server.backup
        31 com.android.server.net
        13 com.google.android.collect
       313 com.google.android.gles_jni
       170 com.google.android.util
         1 dalvik.bytecode
        75 dalvik.system
         7 dalvik.system.profiler
         5 default
       241 java.io
       461 java.lang
         5 java.lang.ref
        39 java.lang.reflect
         2 java.math
       100 java.net
       118 java.nio
         7 java.nio.channels
        15 java.nio.charset
        40 java.security
        16 java.security.cert
         7 java.security.spec
        43 java.text
       437 java.util
        52 java.util.concurrent
        19 java.util.concurrent.atomic
        21 java.util.concurrent.locks
         6 java.util.jar
        13 java.util.logging
        16 java.util.regex
        29 java.util.zip
         8 javax.crypto
         2 javax.crypto.spec
        33 javax.microedition.khronos.egl
       267 javax.microedition.khronos.opengles
         1 javax.net
        27 javax.net.ssl
         8 junit.framework
         7 libcore.icu
         2 libcore.internal
        18 libcore.io
         5 libcore.net
         2 libcore.net.event
        29 libcore.util
         2 org.apache.commons.codec.binary
         4 org.apache.commons.logging
        16 org.apache.harmony.dalvik.ddmc
         2 org.apache.harmony.luni.internal.util
         2 org.apache.harmony.security.asn1
         6 org.apache.harmony.security.pkcs7
         1 org.apache.harmony.security.x509
         1 org.apache.harmony.xml
        30 org.apache.http
        10 org.apache.http.client
         4 org.apache.http.client.methods
         1 org.apache.http.client.params
         1 org.apache.http.conn
         4 org.apache.http.conn.scheme
         1 org.apache.http.conn.ssl
        10 org.apache.http.entity
         3 org.apache.http.impl
         3 org.apache.http.impl.client
         1 org.apache.http.impl.conn.tsccm
         3 org.apache.http.impl.entity
         6 org.apache.http.impl.io
         6 org.apache.http.io
        12 org.apache.http.message
        13 org.apache.http.params
         9 org.apache.http.protocol
        11 org.apache.http.util
         3 org.ccil.cowan.tagsoup
         2 org.kxml2.io
        13 org.xml.sax
         1 org.xml.sax.helpers
        34 org.xmlpull.v1
    
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。              建筑失败
                 总时间:1分钟34.902秒

  •   

我猜也许class-jarjar_framework.jar太大了。我正在构建android源码,我明天会找到一些jar而不是classes-jarjar_framework.jar。

有人提出一些建议,非常感谢

2014年12月28日更新

感谢@stkent,最后,我使用https://developer.android.com/tools/building/multidex.html#mdex-gradle来解决我的问题。我喜欢堆栈溢出。

当你遇到&#34时;本地路径不存在"问题,首先你应该知道问题在哪里。 所以运行

  

gradlew clean packageDebug

不 - 调试,减少信息

接下来,解决它

我的英语不好,再次抱歉:)

2 个答案:

答案 0 :(得分:1)

您的应用已达到65K方法限制。有关解决方案,请参阅the official guide。复制自文档:

  

避免65K限制

     

在配置应用程序以启用65K或更多方法引用之前,您应该采取措施减少应用程序代码调用的引用总数,包括应用程序代码或包含的库定义的方法。以下策略可以帮助您避免达到dex参考限制:

     
      
  • 查看应用程序的直接和传递依赖关系 - 确保您在应用程序中包含的任何大型库依赖关系的使用方式超过了添加到应用程序的代码量。一个常见的反模式是包含一个非常大的库,因为一些实用方法是有用的。减少应用程序代码依赖性通常可以帮助您避免dex参考限制。
  •   
  • 使用ProGuard删除未使用的代码 - 为应用配置ProGuard设置以运行ProGuard,并确保为发布版本启用了收缩功能。启用收缩功能可确保您不会使用APK发送未使用的代码。
  •   
     

使用这些技术可以帮助您避免在应用中启用更多方法引用所需的构建配置更改。这些步骤还可以减小APK的大小,这对于带宽成本较高的市场尤为重要。

答案 1 :(得分:0)

我建议两种方式可以帮到你。

  1. 更改build.gradle文件

    buildTypes {     发布 {         minifyEnabled false //改变这里         proguardFiles getDefaultProguardFile(' proguard-android.txt'),' proguard-rules.pro'     }

  2. 转到计算机的此路径(Windows Os)并更改。

  3. 径; Controlpanel>System>Advance System Setting>Environment Variable 这将打开弹出窗口。在System Variable上的PATH下添加或更改,并为其值%SystemRoot%\system32

    这可能会对你有所帮助