Joe what is the project structure that you don't like and think we should
not adopt?
I'm trying to learn how to use gradle, since we have a project here that we
want to align better with what most Android developers want to use.
Here is what I tried out:
*$ android create project -n FooName -t android-19 -p FooPath -g -k
io.csantana -a FooMain -v 0.9.0*
I was not sure what value to pass for "-v" Gradle Android plugin version.
But it looks it worked and created an Android Gradle project in "FooPath"
First time I ran ./gradlew it download a set of files, then after that any
time I run it again it doesn't dowload I guess they are cache somewhere in
my system.
I didn't installed gradle, I just have the android sdk, and my path setup
for both "tools" and "platform-tools" for $android and $adb
Stop reading if you don't want the details :-)
$ android create project -n FooName -t android-19 -p FooPath -g -k
io.csantana -a FooMain -v 0.9.0
Created project directory: FooPath
Created directory /Users/csantana23/foo/android/FooPath/src/main/java
Created directory
/Users/csantana23/foo/android/FooPath/src/main/java/io/csantana
Added file FooPath/src/main/java/io/csantana/FooMain.java
Created directory
/Users/csantana23/foo/android/FooPath/src/instrumentTest/java
Created directory
/Users/csantana23/foo/android/FooPath/src/instrumentTest/java/io/csantana
Added file FooPath/src/instrumentTest/java/io/csantana/FooMainTest.java
Created directory /Users/csantana23/foo/android/FooPath/src/main/res
Created directory /Users/csantana23/foo/android/FooPath/src/main/res/values
Added file FooPath/src/main/res/values/strings.xml
Created directory /Users/csantana23/foo/android/FooPath/src/main/res/layout
Added file FooPath/src/main/res/layout/main.xml
Created directory
/Users/csantana23/foo/android/FooPath/src/main/res/drawable-xhdpi
Created directory
/Users/csantana23/foo/android/FooPath/src/main/res/drawable-hdpi
Created directory
/Users/csantana23/foo/android/FooPath/src/main/res/drawable-mdpi
Created directory
/Users/csantana23/foo/android/FooPath/src/main/res/drawable-ldpi
Added file FooPath/src/main/AndroidManifest.xml
Added file FooPath/build.gradle
Created directory /Users/csantana23/foo/android/FooPath/gradle/wrapper
$ tree FooPath/
FooPath/
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── local.properties
└── src
├── instrumentTest
│ └── java
│ └── io
│ └── csantana
│ └── FooMainTest.java
└── main
├── AndroidManifest.xml
├── java
│ └── io
│ └── csantana
│ └── FooMain.java
└── res
├── drawable-hdpi
│ └── ic_launcher.png
├── drawable-ldpi
│ └── ic_launcher.png
├── drawable-mdpi
│ └── ic_launcher.png
├── drawable-xhdpi
│ └── ic_launcher.png
├── layout
│ └── main.xml
└── values
└── strings.xml
18 directories, 15 files
$ ./gradlew
Download
http://repo1.maven.org/maven2/com/android/tools/build/gradle/0.9.0/gradle-0.9.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder/0.9.0/builder-0.9.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint/22.7.0/lint-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/sdk-common/22.7.0/sdk-common-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/build/manifest-merger/22.7.0/manifest-merger-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/ddms/ddmlib/22.7.0/ddmlib-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/common/22.7.0/common-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder-test-api/0.9.0/builder-test-api-0.9.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder-model/0.9.0/builder-model-0.9.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/sdklib/22.7.0/sdklib-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint-checks/22.7.0/lint-checks-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/layoutlib/layoutlib-api/22.7.0/layoutlib-api-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/dvlib/22.7.0/dvlib-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint-api/22.7.0/lint-api-22.7.0.pom
Download
http://repo1.maven.org/maven2/com/android/tools/build/gradle/0.9.0/gradle-0.9.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder/0.9.0/builder-0.9.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint/22.7.0/lint-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/sdk-common/22.7.0/sdk-common-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/build/manifest-merger/22.7.0/manifest-merger-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/ddms/ddmlib/22.7.0/ddmlib-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/common/22.7.0/common-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder-test-api/0.9.0/builder-test-api-0.9.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/build/builder-model/0.9.0/builder-model-0.9.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/sdklib/22.7.0/sdklib-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint-checks/22.7.0/lint-checks-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/layoutlib/layoutlib-api/22.7.0/layoutlib-api-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/dvlib/22.7.0/dvlib-22.7.0.jar
Download
http://repo1.maven.org/maven2/com/android/tools/lint/lint-api/22.7.0/lint-api-22.7.0.jar
:help
Welcome to Gradle 1.10.
To run a build, run gradlew <task> ...
To see a list of available tasks, run gradlew tasks
To see a list of command-line options, run gradlew --help
BUILD SUCCESSFUL
Total time: 16.845 secs
On Wed, Jun 18, 2014 at 12:50 PM, Joe Bowser <[email protected]> wrote:
> Found it, it's located here:
> $ANDROID_SDK_PATH/tools/templates/gradle/wrapper
>
> On Wed, Jun 18, 2014 at 8:46 AM, Joe Bowser <[email protected]> wrote:
> > Actually, it's not by default, but it does generate a gradle project
> > if you use the right flags. However, the project structure is
> > radically different that I'm not sure we want to adopt it. Still, we
> > can find where the JAR is and copy it out of the Android SDK
> > directory.
> >
> > On Wed, Jun 18, 2014 at 8:45 AM, Joe Bowser <[email protected]> wrote:
> >> The Android Dev Tools generate a gradle project by default. Where
> >> does it store gradle-wrapper?
> >>
> >> On Wed, Jun 18, 2014 at 7:59 AM, Josh Soref <[email protected]>
> wrote:
> >>> Ian Clelland wrote:
> >>>>But Gradle is a Java project, and so the script invokes Java, and makes
> >>>>use
> >>>>of a bundled .jar file, and therein lies the problem: We're not
> supposed
> >>>>to
> >>>>be including compiled JAR files in our repository.
> >>>>
> >>>>In this case, the .jar isn't actually part of our code; it's just used
> by
> >>>>the build, and including it makes it closer to trivial for developers
> to
> >>>>start building Cordova projects. It's easy to recreate, too, once you
> have
> >>>>Gradle installed, it's as easy as running "gradle wrapper" to get it to
> >>>>rebuild the wrapper, jar and all. The catch is that you already have to
> >>>>have gradle installed for that to work. Egg, meet chicken.
> >>>
> >>> Can we cheat and just have a script that uses curl/wget to retrieve
> Gradle
> >>> from Apache's dist directory?
> >>>
> >>> Or, could we publish Gradle to npm and then have our thing depend on
> >>> cordova-gradle ?
> >>>
>
--
Carlos Santana
<[email protected]>