Android studio avec expérimentale gradle 0.2.0
J'essaye de configurer une base ndk construire avec la dernière version d'android studio en ce moment. En essayant de suivre ce tutoriel
C'est mon gradle-wrapper.propriétés
#Thu Sep 17 14:22:34 CST 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-all.zip
C'est le projet de construction.gradle
//Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle-experimental:0.2.0'
//NOTE: Do not place your application dependencies here; they belong
//in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Voici mon module de construire.gradle
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.1"
defaultConfig.with {
applicationId = "me.blubee.testnative_exp"
minSdkVersion = 10
targetSdkVersion = 23
versionCode = 1
versionName = "1.0"
}
buildConfigFields.with {
create() {
type = "int"
name = "VALUE"
value = "1"
}
}
android.buildTypes {
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.pro')
}
}
android.productFlavors {
create("flavor1") {
applicationId = 'com.app'
}
}
android.sources {
main {
java {
source {
srcDir 'src'
}
}
}
}
}
}
mon projet de la structure ressemble à ceci:
APP
Java/
Java/android.support
Java/com.test.test_experimental
Java/com.test.test_experimental/R
Java/com.test.test_experimental
Java/com.test.test_experimentalBuildConfig
Java/com.test.test_experimental
Java/com.test.test_experimental/MainActivity
tests/
tests/com.test.test_experimental
tests/com.test.test_experimental/ApplicationTest.java
tests/com.test.test_experimental
tests/com.test.test_experimental/BuildConfig.java
resources/
test-resources
gradle/scripts/
J'obtiens ces erreurs:
2:51:31 PM Gradle sync started
2:51:34 PM Gradle sync failed: Unable to load class 'com.android.build.gradle.managed.ProductFlavor_Impl'.
Consult IDE log for more details (Help | Show Log)
Error:Unable to load class 'com.android.build.gradle.managed.ProductFlavor_Impl'.
Possible causes for this unexpected error include:<ul><li>Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
<a href="syncProject">Re-download dependencies and sync project (requires network)</a></li><li>The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
<a href="stopGradleDaemons">Stop Gradle build processes (requires restart)</a></li><li>Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.</li></ul>In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.
Brother:TestNative_exp blubee$ ./gradlew clean --stacktrack
FAILURE: Build failed with an exception.
* Where:
Build file '/Users/bb/TestNative_exp/app/build.gradle' line: 10
* What went wrong:
A problem occurred configuring project ':app'.
> Exception thrown while executing model rule: model.android
> Cannot set readonly property: minSdkVersion for class: com.android.build.gradle.managed.ProductFlavor_Impl
* 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.619 secs
ligne n ° 10: minSdkVersion = 10
Vous pouvez voir l'ensemble du dossier dans le build.gradle
que j'ai mis ci-dessus.
modifier
@Unbekant l'a souligné dans son commentaire et le lien vers ce post
Min et cible sdk valeurs devraient être définies comme ceci:
minSdkVersion.apiLevel = 15
targetSdkVersion.apiLevel = 22
J'ai essayé ça aussi, j'ai cette erreur:
* What went wrong:
A problem occurred configuring project ':app'.
> Exception thrown while executing model rule: model.android
> No such property: buildConfigFields for class: com.android.build.gradle.managed.AndroidConfig
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Ce que je fais mal?
OriginalL'auteur user1610950 | 2015-09-17
Vous devez vous connecter pour publier un commentaire.
Vous devez mettre ces blocs à l'extérieur la
android
bloc.Également la
buildConfigFields.with
doit être à l'intérieur de ladefaultConfig
ou à l'intérieur de labuildTypes
ouproductFlavors
:Quelque chose comme:
Aussi, la dernière version est 0.2.1.
Merci! La chose qui m'a frappé c'est l'évolution de: minSdkVersion => minSdkVersion.apiLevel et targetSdkVersion => targetSdkVersion.apiLevel
OriginalL'auteur Gabriele Mariotti
Il y a un tutoriel? Oh, que. Où sont les liens?
ou dates?
J'ai googlé tous les fichiers manquants individuellement (peut-être 3 douzaine!) après l'ajout:
J'ai essayé la version alpha aussi, mais je n'ai pas réussi à trouver certaines de ses dépendances au total.
J'ai d'abord obtenir un couple de dépendances j'ai peut-être pris la peine de traquer:
Une fois chacun de ces a été ajouté au chemin d'accès donné que sept autres ne pousse jusqu'à sa place. Si quelqu'un pouvait poster comment mettre à jour automatiquement ces (ils ne sont pas dans le dernier 1.4RC1 Android Studio), il serait très utile. J'ai obtenu la plupart des trucs de maven, par exemple, http://mvnrepository.com/artifact/com.android.tools.lint/lint-checks/24.3.1
J'ai obtenu tous les fichiers de la fermer Gradle de pleurnicher et vous savez ce qu'il a dit?
Ce qui était exactement l'erreur qui m'a poussé à migrer vers expérimental et n'est pas meilleure que le stock 1.3.0 livré avec CAR (même si c'était par défaut 1.2.3).
Pourquoi ai-je pris la peine? Je veux debug NDK et je ne pouvais pas voir ce que je ne faisais pas en dehors de pas à l'aide d'un expérimentales construire.
Cette poursuite de l'oie était juste une grosse perte de temps. Je suis de retour à l'aide de
Aucun doute que je peut le fixer ailleurs, mais juste un avertissement pour les autres chassant expérimentale dépendances; ils sont des licornes.
OriginalL'auteur John
@jonagon
Quelques exemples sont dans ce repo:
https://github.com/googlesamples/android-ndk
probablement pu essayer:
jni dossier numéro:
il est par défaut pour gradle expérimentale plugin, aussi pour les plus âgés le support du c++ PAS à l'aide de gradle-expérimentale plugin ( android plugin )
si vous avez ce dossier et de ne pas utiliser expérimentale plugin Gradle pense que l'application est en utilisant l'ancien android studio support du c++. Il donne à votre avertissement "NDK intégration est obsolète dans le plugin actuel" et de vous recommander à expérimentales plugin. il pourrait être réduit au silence avec:
ou renommez simplement que jni dossier à autre chose: il va causer plus de problèmes si vous le souhaitez android-studio cmake/ndk-build dans l'avenir, renommer, c'est mieux.
OriginalL'auteur Gerry