3

I am using Android Studio to run this code, get the error: *Error:Execution failed for task ':tweetLanes:dexDebug'.

com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2*

2 days couldn't solve the problem. Tried everything I can find online, nothing helped and always the same error.

Here is the build.gradle :

*

apply plugin: 'com.android.library'
android {
    compileSdkVersion 18
    buildToolsVersion "21.1.2"
    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 17
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}
dependencies {
    compile project(':tLSocialNetLib')
    compile 'com.android.support:support-v4:18.0.0'
    compile files('libs/basic-http-client-android-0.88.jar')
    compile files('libs/crittercism_v4_3_0_sdkonly.jar')
    compile files('libs/dashclock-api-r1.1.jar')
    compile files('libs/prime-0.6.1.jar')
}

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.tweetlanes.android"
    android:versionCode="57"
    android:versionName="1.4.1">

    <uses-sdk android:targetSdkVersion="17"
        android:minSdkVersion="14" />

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-feature android:name="android.permission.CAMERA" android:required="false" />

    <application
        android:label="@string/app_launcher_name"
        android:theme="@android:style/Theme.NoTitleBar"
        android:icon="@drawable/ic_launcher"
        android:name="com.tweetlanes.android.core.App"
        tools:replace="label">
         >

        <activity
            android:name="com.tweetlanes.android.core.view.BootActivity"
            >
            <intent-filter android:label="@string/app_launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="mobile.twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="mobile.twitter.com"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="www.twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="www.mobile.twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="www.twitter.com" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="www.mobile.twitter.com"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="alpha.app.net"  />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="alpha.app.net"  />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" android:host="www.alpha.app.net"  />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https" android:host="www.alpha.app.net"  />
            </intent-filter>
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.NewAccountActivity"
            >
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="com.tweetlanes.android.core.newaccount" />
            </intent-filter>
        </activity>


        <activity android:name="com.tweetlanes.android.core.view.HomeActivity"
                  android:launchMode="singleTop"
            >

            <intent-filter>
               <action android:name="android.intent.action.SEND" />
               <category android:name="android.intent.category.DEFAULT" />
               <data android:mimeType="text/plain" />
               <data android:mimeType="image/*" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.ProfileActivity"
            android:windowSoftInputMode="stateUnchanged"
             >
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="com.tweetlanes.android.core.profile" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.SearchActivity"
            >
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="com.tweetlanes.android.core.search" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.TweetSpotlightActivity"
            android:label="@string/app_tweet_spotlight_activity_name"
            >
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.ImageViewActivity"
            android:theme="@android:style/Theme.Holo"
            >
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="com.tweetlanes.android.core.mediaview" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.TutorialActivity"
            android:theme="@style/Theme.TweetLanes.Light"
            android:label="@string/tutorial_title"
            >
        </activity>

        <activity
            android:name="com.tweetlanes.android.core.view.DirectMessageActivity"
            android:theme="@style/Theme.TweetLanes.Light"
            >
        </activity>

         <activity android:name="com.tweetlanes.android.core.view.SettingsActivity"
                android:label="@string/title_settings">
        </activity>

         <activity android:name="com.tweetlanes.android.core.view.TwitterAuthActivity"
             android:theme="@style/Theme.TweetLanes.Light"
             android:noHistory="true">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="tweetlanes-auth-callback:///" android:host="callback" />
            </intent-filter>
        </activity>

         <activity android:name="com.tweetlanes.android.core.view.AppDotNetAuthActivity"
             android:theme="@style/Theme.TweetLanes.Light"
             android:noHistory="true">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="appdotnet-auth-callback:///" android:host="callback" />
            </intent-filter>
        </activity>

        <receiver android:name="com.tweetlanes.android.core.view.AlarmReceiver" />
        <receiver android:name="com.tweetlanes.android.core.view.DeleteNotificationsReceiver" />

        <receiver
                android:name="com.tweetlanes.android.core.view.DeviceBootReciever"
                android:enabled="true"
                android:exported="true"
                android:label="StartDeviceAlerts">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

         <service
            android:name="com.tweetlanes.android.core.dashclock.TweetLanesExtension"
            android:label="@string/extension_title"
            android:permission="com.google.android.apps.dashclock.permission.READ_EXTENSION_DATA" >
            <intent-filter>
                <action android:name="com.google.android.apps.dashclock.Extension" />
            </intent-filter>

            <meta-data
                android:name="protocolVersion"
                android:value="1" />
            <meta-data
                android:name="description"
                android:value="@string/extension_description" />
        </service>

        <!-- Start of Crittercism.com Code -->
        <activity android:name="com.crittercism.NewFeedbackSpringboardActivity" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:screenOrientation="portrait"></activity>
        <activity android:name="com.crittercism.NewFeedbackIssueListActivity" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:screenOrientation="portrait"></activity>
        <activity android:name="com.crittercism.NewFeedbackQuestionListActivity" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:screenOrientation="portrait"></activity>
        <activity android:name="com.crittercism.NewFeedbackItemDetailsActivity" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:screenOrientation="portrait"></activity>
        <activity android:name="com.crittercism.NewFeedbackCreateActivity" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:screenOrientation="portrait"></activity>
        <activity android:name="com.crittercism.NotificationActivity" android:screenOrientation="portrait"/>
        <!-- End of Crittercism.com Code -->



    </application>



</manifest>

Please help..

WY4869
  • 101
  • 1
  • 12

2 Answers2

9

Your app classes maybe contain over 65K methods.

Add configurations into your build.gradle,

  defaultConfig {
        ...
        // Enabling multidex support.
        multiDexEnabled true
  }

 dependencies {
       ...
       compile 'com.android.support:multidex:1.0.0'
 }

In your manifest add the MultiDexApplication class from the multidex support library to the application element,

<application
    ...
    android:name="android.support.multidex.MultiDexApplication">
    ...
</application>

Or, If your app uses extends the Application class, you can override the attachBaseContext() method and call MultiDex.install(this) to enable multidex. For more information, see the MultiDexApplication reference documentation.

See Building Apps with Over 65K Methods

1

If you have support-v4 and support-v7 in build.gradle then add this line into your build.gradle at top after plugin declaration.

configurations { all*.exclude group: 'com.android.support', module: 'support-v4' }

Also read this

Community
  • 1
  • 1
noman404
  • 928
  • 1
  • 8
  • 23