【问题标题】:Issue with proguardFile, null returned: 1proguardFile 问题,返回 null:1
【发布时间】:2012-11-14 22:58:59
【问题描述】:

您好,我正在尝试在 cmd 上运行“ant clean debug”命令。但我得到 null 返回:1 个错误。

BUILD FAILED
C:\Program Files (x86)\Android\android-sdk\tools\ant\build.xml:622: The following error    occurred while executing this line:
 C:\Program Files (x86)\Android\android-sdk\tools\ant\build.xml:658: null returned: 1



 <aapt executable="${aapt}"
                 command="package"
                 verbose="${verbose}"
                 manifest="${out.manifest.abs.file}"
                 androidjar="${project.target.android.jar}"
                 rfolder="${gen.absolute.dir}"
                 nonConstantId="${android.library}"
                 libraryResFolderPathRefid="project.library.res.folder.path"
                 libraryPackagesRefid="project.library.packages"
                 ignoreAssets="${aapt.ignore.assets}"
                 proguardFile="${out.absolute.dir}/proguard.txt">
             <res path="${out.res.absolute.dir}" />
             <res path="${resource.absolute.dir}" />
         </aapt>

第 658 行:

 proguardFile="${out.absolute.dir}/proguard.txt">

第 622 行:

 elseText="hasCode = false. Skipping aidl/renderscript/R.java">

他们有谁知道这个问题的解决方案吗?

【问题讨论】:

  • 请重命名您的问题标题。在某处包含 proguard。
  • // proguardFile="${out.absolute.dir}/proguard.txt" // 这行有问题。最近的 Proguard 更改将 proguard 配置文件引用为项目根目录中的 proguard-project.txt。该文件何时被复制到 {out.absolute.dir},名称何时更改为 proguard.txt。这似乎是来自 google android sdk ant build tools 的错误。

标签: android ant proguard


【解决方案1】:

在我的例子中,之前的日志中也有错误报告,只是很难找到。 据我了解,任何类型的错误都会导致该消息。

所以null returned: 1这个疯狂的消息实际上意味着请阅读上面的日志

【讨论】:

    【解决方案2】:

    我在从我的主项目中引用外部遗留库时遇到了同样的问题 - 引用后,我的主项目将无法构建,尽管在不引用外部库时两者都构建得很好。

    解决方案,尽管很愚蠢,是创建一个新的空 Android 应用项目,并从新项目的外部库中复制所有源和资源文件。之后,引用工作,一切正常。

    我相信这与changes in Proguard after ADT 17有关。

    【讨论】:

      【解决方案3】:

      C:\Program Files (x86)\Android\android-sdk\tools\ant\ 此路径包含空格。 从 sdk 路径中删除空格。

      您可以使用 c:\Android\android-sdk.. 之类的方式作为不包含任何空格的 sdk 路径。

      【讨论】:

      • 嗯同意,最好把SDK放在父路径C:\, D:\等
      • 你的意思是 Program Files (x86) 中的空间吗?
      • 是的,我正在将“”与 Program Files (x86) 一起使用。像这样的“程序文件(x86)”。像这样 C:\Users\srcloud\Documents\GitHub\SalesforceMobileSDK-Android\native\SalesforceSDK>C:\"Program Files (x86)"\Android\android-sdk\tools\android update project -p 。 -t 1
      • 将其更改为没有空格的其他路径,如 c:/android-sdk
      • 我按照您指导我的方式完成了相同的操作,但出现了相同的错误。 BUILD FAILED C:\Android\android-sdk\tools\ant\build.xml:622:执行此行时出现以下错误:C:\Android\android-sdk\tools\ant\build.xml:658:返回空值:1
      猜你喜欢
      • 2020-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-18
      • 1970-01-01
      • 2021-10-22
      • 2014-03-25
      • 2010-10-28
      相关资源
      最近更新 更多