Search code examples
androidandroid-gradle-pluginandroid-multidex

--incremental is not supported with --multi-dex


I recently added a new module to my project. The module is: https://github.com/boxme/SquareCamera but when I add the Activity to my manifest I get the following error when I build my app. The error doesn't occur when I don't add it to my manifest. I tried to add the module by using gradle and also by just including the files in my project but on both ways I get an error.

Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    /Users/bartbergmans/Development/Android SDK/build-tools/23.0.0/dx -JXmx4g --dex --incremental --no-strict --no-optimize --multi-dex --main-dex-list /Users/bartbergmans/apps/eCook/app/build/intermediates/multi-dex/debug/maindexlist.txt --multi-dex --output /Users/bartbergmans/apps/eCook/app/build/intermediates/dex/debug --input-list=/Users/bartbergmans/apps/eCook/app/build/intermediates/tmp/dex/debug/inputList.txt
  Error Code:
    1
  Output:
    --incremental is not supported with --multi-dex
    usage:
      dx --dex [--debug] [--verbose] [--positions=<style>] [--no-locals]
      [--no-optimize] [--statistics] [--[no-]optimize-list=<file>] [--no-strict]
      [--keep-classes] [--output=<file>] [--dump-to=<file>] [--dump-width=<n>]
      [--dump-method=<name>[*]] [--verbose-dump] [--no-files] [--core-library]
      [--num-threads=<n>] [--incremental] [--force-jumbo] [--no-warning]
      [--multi-dex [--main-dex-list=<file> [--minimal-main-dex]]
      [--input-list=<file>]
      [<file>.class | <file>.{zip,jar,apk} | <directory>] ...
        Convert a set of classfiles into a dex file, optionally embedded in a
        jar/zip. Output name must end with one of: .dex .jar .zip .apk or be a directory.
        Positions options: none, important, lines.
        --multi-dex: allows to generate several dex files if needed. This option is 
        exclusive with --incremental, causes --num-threads to be ignored and only
        supports folder or archive output.
        --main-dex-list=<file>: <file> is a list of class file names, classes defined by
        those class files are put in classes.dex.
        --minimal-main-dex: only classes selected by --main-dex-list are to be put in
        the main dex.
        --input-list: <file> is a list of inputs.
        Each line in <file> must end with one of: .class .jar .zip .apk or be a directory.
      dx --annotool --annotation=<class> [--element=<element types>]
      [--print=<print types>]
      dx --dump [--debug] [--strict] [--bytes] [--optimize]
      [--basic-blocks | --rop-blocks | --ssa-blocks | --dot] [--ssa-step=<step>]
      [--width=<n>] [<file>.class | <file>.txt] ...
        Dump classfiles, or transformations thereof, in a human-oriented format.
      dx --find-usages <file.dex> <declaring type> <member>
        Find references and declarations to a field or method.
        declaring type: a class name in internal form, like Ljava/lang/Object;
        member: a field or method name, like hashCode
      dx -J<option> ... <arguments, in one of the above forms>
        Pass VM-specific options to the virtual machine that runs dx.
      dx --version
        Print the version of this tool (1.11).
      dx --help
        Print this message.

Edit:

I fixed it by setting incremental in my dexOptions to false. Is this a good decision?


Solution

  • I fixed it by setting incremental in my dexOptions to false.