ZhangYuan created CB-9520:
-----------------------------

             Summary: A strage proble while running 'cordova build android' in 
multiply project
                 Key: CB-9520
                 URL: https://issues.apache.org/jira/browse/CB-9520
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android, CordovaLib
    Affects Versions: 4.1.1
         Environment: windows 8.1 Pro 64bit, 
Android SDK Build-tools 23.0.0, 
Gradle 2.4, 
JDK1.7.
cordova 4.1.2
            Reporter: ZhangYuan


I am trying to do 'cordova build android' in a multiply project and got a 
strage problem which I cannot find any answer in stackoverflow.
Would you please help me ?
My projects structure like :
  
    android(MainApp)
    |-- build.gradle
    |-- setting.gradle
    |-- gradle.properties
    |--LibProject1
       |-- build.gradle
       |-- setting.gradle
       |-- gradle.properties
    |--LibProject2
       |-- build.gradle
       |-- setting.gradle
       |-- gradle.properties
    |--LibProject3
       |-- build.gradle
       |-- setting.gradle
       |-- gradle.properties
          |--LibProject3_1
          |-- build.gradle
          |-- setting.gradle
          |-- gradle.properties

'cordova prepare android' and 'cordova plugins' run successfully, but 'cordova 
build android' failed in very long and strange error:

----------------------------------------------------------------------------------------------
    Running command: ******\platforms\android\cordova\build.bat
    ANDROID_HOME=*****
    JAVA_HOME=*****
    Running: ******android\gradlew cdvBuildDebug -b 
****platforms\android\build.gradle -Dorg.gradle.daemon=true
    Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary 
configuration failure takes
    precedence.
    java.lang.IllegalStateException: buildToolsVersion is not specified.
        at 
com.google.common.base.Preconditions.checkState(Preconditions.java:176)
        at 
com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.groovy:444)
        at 
com.android.build.gradle.BasePlugin$_createTasks_closure13_closure17.doCall(BasePlugin.groovy:415)
        at 
com.android.build.gradle.BasePlugin$_createTasks_closure13_closure17.doCall(BasePlugin.groovy)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324)

    FAILURE: Build failed with an exception.

    * Where:
    Build file '*****platforms\android\LibProject1\build.gradle' line: 49

    * What went wrong:
    A problem occurred evaluating project ':LibProject1'.
    > Project with path ':LibProject3' could not be found in project 
':LibProject1'.

    * Try:
    Run with --stacktrace option to get the stack trace. Run with --info or 
--debug option to get more log output.

    BUILD FAILED

    Total time: 2.142 secs

    ******platforms\android\cordova\node_modules\q\q.js:126
                    throw e;
                          ^
   Error code 1 for command: cmd with args: /s /c 
"******\platforms\android\gradlew cdvBuildDebug -b 
    ******\platforms\android\build.gradle -Dorg.gradle.daemon=true"
    Error: ******platforms\android\cordova\build.bat: Command failed with exit 
code 8
          at ChildProcess.whenDone 
(****AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:135:23)
          at ChildProcess.emit (events.js:98:17)
          at maybeClose (child_process.js:766:16)
          at Process.ChildProcess._handle.onexit (child_process.js:833:5)
----------------------------------------------------------------------------------------------
  
seems it said my LibProject1/build.gradle has some wrong but 'gradle build' 
successed and I got apk run normally. 

finally I found that when 'cordova build android' ran, file 
LibProject1/build.gradle is being changed auto. for example: 

    dependencies{
     compile project(':LibProject2')
    }

is changed to 

   dependencies{
     debugCompile project(path: ":LibProject3", configuration: "debug")
     releaseCompile project(path: ":LibProject3", configuration: "release")
    }
I am realy confuse with this problem. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org
For additional commands, e-mail: issues-h...@cordova.apache.org

Reply via email to