J'ai un projet que je lance déjà dans Android Studio.
Après avoir ouvert le projet dans Android Studio, j'ai reçu le message suivant:
Migrer le projet vers Gradle? Ce projet n'utilise pas le système de génération Gradle. Nous vous recommandons de migrer vers le système de génération Gradle . Plus d'informations sur la migration vers Gradle Ne plus afficher ce message.
Suite au lien de Plus d’informations sur la migration vers Gradle bien que je sois déjà sur Android Studio
j’ai suivi l’option Migration d’IntelliJ Projects .
Comme j'ai déjà un fichier build.gradle
à la racine de mon projet, j'ai modifié pour inclure des dépendances.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.Android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'Android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile "com.Android.support:support-v4:18.0.+"
compile "com.Android.support:appcompat-v7:18.0.+"
}
Android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
Java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/Java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/Java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
Comme indiqué, j’ai exécuté gradle assembleDebug
sur les fenêtres de terminal Android Studio
, mais des erreurs se présentaient. Pour résoudre ces erreurs, j'ai dû créer un local.properties
avec sdk.dir=C:\\Program Files (x86)\\Android\\Android-sdk
et supprimer le fichier Android-support-v4.jar
du dossier /libs
et du Libraries->libs
du Project Structure
.
J'ai maintenant exécuté à nouveau gradle assembleDebug
et cette fois, il se termine sans erreur.
J'ai redémarré Android Studio
mais après avoir redémarré, j'ai constaté que sur le External Libraries
du projet, il n'y avait pas de support-v4
et appcompat-v7
et que dans l'une de mes classes, le import Android.support.v4.widget.CursorAdapter;
était marqué comme une erreur depuis Cannot resolve symbol Cursor Adapter
.
Si j'appuie sur le bouton Sync project with gradle files
i j'ai reçu le message: The project MyProject is not a Gradle-based project
Quelqu'un peut-il m'aider à comprendre comment résoudre ce problème?
Voici la structure de mon projet
Le projet pense qu'il s'agit toujours d'un projet non basé sur Gradle; ce n'est pas la présence du build.gradle fichier qui le rend basé sur Gradle, mais c'est la façon dont le projet a été mis en place en premier lieu. Vous devrez réimporter votre projet pour terminer la conversion en Gradle.
Tout d’abord, on dirait que vous n’avez pas de paramètres.gradle fichier; on dirait que vous en avez besoin. Puisque vous avez configuré votre projet en tant que projet mono-module, vous pouvez alors placer le fichier dans le répertoire racine de votre projet, à côté de build.gradle. Il devrait contenir ceci:
import ':'
À l'avenir, si vous ajoutez d'autres modules à votre projet, vous souhaiterez peut-être le convertir en une structure de répertoires à plusieurs modules, mais vous n'avez pas à vous en préoccuper maintenant. Dans tous les cas, vous devez maintenant effectuer la réimportation dans Android Studio:
Après cela, vous devriez être prêt à partir.
Dans mon cas: Étape 1: Structure du projet> Paramètres.gradle (ouvrez-le et ajoutez-- include ': app'; .
Étape 2: Onglet Goto Gradle (normalement présent à gauche ou à droite d'Android Studio)> Cliquez ensuite sur Actualiser tout le projet Gradle
Étape 3: Bang ....... J'espère que son travail. (Ses travaux pour moi)
Dans mon cas, lorsque j'ai essayé d'ouvrir un projet Gradle existant et que AS ne l'a pas reconnu comme un projet Gradle, le problème se trouvait dans le fichier settings.gradle
. settings.gradle
était corrompu car, pour une raison quelconque, le point-virgule était manquant. La structure de droite est include ':app';
où app est le nom du module du projet.
De plus, si vous avez besoin, vous pouvez mettre plus d'un module, comme ceci: include ':module1', ':module2', ':module3';
J'espère que cela pourrait aider quelqu'un.
Tout ce que j’ai fait, c’est d’essayer d’importer le projet avec l’option "importer Gradle, Eclipse ETC" dans la fenêtre de démarrage d’Android Studio, de sélectionner mon projet incompatible avec la licence à importer, puis de l’importer en me demandant automatiquement si je voulais un projet de construction de gradle et le tour est joué, il a été importé correctement cette fois, sans erreur.
Le processus est assez simple, vous n'avez rien à bricoler avec des paramètres désagréables, il suffit de suivre les corrections automatiques IDE] et cela fonctionnera.
Enfin cela a fonctionné pour moi!
Il suffit de vérifier si vous importez le bon dossier contenant les dossiers .gradle et .idea