web-dev-qa-db-fra.com

IntelliJ nouveau plugin Android gradle (0.14. +)

J'essaie d'utiliser le nouveau plugin Android Gradle dans IntelliJ mais je n'arrive pas à construire mon projet à l'aide du nouveau plugin Gradle.

J'ai modifié les dépendances dans le fichier build.gradle de l'application en "classpath 'com.Android.tools.build:gradle:0.14.+'", j'ai mis à jour le gradle à 2.1 et le fichier build.gradle dans mon module.

Je continue à avoir cette erreur dans les journaux IntelliJ:

2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - IntelliJ IDEA 13.1.5  Build #IU-135.1289 
2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - JDK: 1.8.0_05 
2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - VM: Java HotSpot(TM) 64-Bit Server VM 
2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - Vendor: Oracle Corporation 
2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - OS: Windows 8 
2014-11-03 16:40:12,864 [ 937413]  ERROR - vice.AndroidProjectDataService - Last Action: ShowSettings 
2014-11-03 16:40:13,130 [ 937679]   INFO - indexing.UnindexedFilesUpdater - Indexable files iterated in 5 ms 
2014-11-03 16:40:13,130 [ 937679]   INFO - indexing.UnindexedFilesUpdater - Unindexed files update started: 0 files to update 
2014-11-03 16:40:13,130 [ 937679]   INFO - indexing.UnindexedFilesUpdater - Unindexed files update done in 0 ms 
2014-11-03 16:41:02,813 [ 987362]   INFO - s.plugins.gradle.GradleManager - Instructing gradle to use Java from C:\Program Files\Java\jdk1.8.0_05 
2014-11-03 16:41:02,815 [ 987364]   INFO - s.plugins.gradle.GradleManager - Instructing gradle to use Java from C:\Program Files\Java\jdk1.8.0_05 
2014-11-03 16:41:02,821 [ 987370]   INFO - .project.GradleExecutionHelper - Passing command-line args to Gradle Tooling API: [-Pandroid.injected.build.model.only=true, -Pandroid.injected.invoked.from.ide=true, --init-script, C:\Users\ionut.negru\AppData\Local\Temp\ijinit8822454065314970200.gradle] 
2014-11-03 16:41:07,002 [ 991551]  ERROR - vice.AndroidProjectDataService - Failed to set up Android modules in project 'MyApplication' 
org.gradle.tooling.model.UnsupportedMethodException: Unsupported method: SourceProvider.getJniDirectories().
The version of Gradle you connect to does not support that method.
To resolve the problem you can change/upgrade the target version of Gradle you connect to.
Alternatively, you can ignore this exception and read other information from the model.
    at org.gradle.tooling.model.internal.Exceptions.unsupportedMethod(Exceptions.Java:33)
    at org.gradle.tooling.internal.adapter.ProtocolToModelAdapter$InvocationHandlerImpl.invoke(ProtocolToModelAdapter.Java:240)
    at com.Sun.proxy.$Proxy128.getJniDirectories(Unknown Source)
    at com.Android.tools.idea.gradle.customizer.Android.ContentRootModuleCustomizer.addSourceFolder(ContentRootModuleCustomizer.Java:170)
    at com.Android.tools.idea.gradle.customizer.Android.ContentRootModuleCustomizer.addSourceFolders(ContentRootModuleCustomizer.Java:120)
    at com.Android.tools.idea.gradle.customizer.Android.ContentRootModuleCustomizer.setUpContentEntries(ContentRootModuleCustomizer.Java:85)
    at com.Android.tools.idea.gradle.customizer.Android.ContentRootModuleCustomizer.setUpContentEntries(ContentRootModuleCustomizer.Java:45)
    at com.Android.tools.idea.gradle.customizer.AbstractContentRootModuleCustomizer.customizeModule(AbstractContentRootModuleCustomizer.Java:56)
    at com.Android.tools.idea.gradle.service.AndroidProjectDataService.customizeModule(AndroidProjectDataService.Java:191)
    at com.Android.tools.idea.gradle.service.AndroidProjectDataService.access$100(AndroidProjectDataService.Java:64)
    at com.Android.tools.idea.gradle.service.AndroidProjectDataService$1.run(AndroidProjectDataService.Java:126)
    at com.intellij.openapi.command.WriteCommandAction$Simple.run(WriteCommandAction.Java:168)
    at com.intellij.openapi.application.RunResult.run(RunResult.Java:38)
    at com.intellij.openapi.command.WriteCommandAction$2$1.run(WriteCommandAction.Java:118)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.Java:984)
    at com.intellij.openapi.command.WriteCommandAction$2.run(WriteCommandAction.Java:115)
    at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.Java:124)
    at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.Java:99)
    at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.Java:112)
    at com.intellij.openapi.command.WriteCommandAction.access$000(WriteCommandAction.Java:33)
    at com.intellij.openapi.command.WriteCommandAction$1.run(WriteCommandAction.Java:80)
    at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.Java:85)
    at com.Android.tools.idea.gradle.service.AndroidProjectDataService.doImport(AndroidProjectDataService.Java:114)
    at com.Android.tools.idea.gradle.service.AndroidProjectDataService.importData(AndroidProjectDataService.Java:97)
    at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.Java:90)
    at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.Java:74)
    at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.Java:98)
    at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.Java:74)
    at com.intellij.openapi.externalSystem.service.project.manage.ProjectDataManager.importData(ProjectDataManager.Java:98)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$MyMultiExternalProjectRefreshCallback$1$1.run(ExternalSystemUtil.Java:766)
    at com.intellij.openapi.roots.impl.ProjectRootManagerImpl.mergeRootsChangesDuring(ProjectRootManagerImpl.Java:329)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$MyMultiExternalProjectRefreshCallback$1.execute(ExternalSystemUtil.Java:763)
    at com.intellij.openapi.externalSystem.util.DisposeAwareProjectChange.run(DisposeAwareProjectChange.Java:36)
    at com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil$5$1.run(ExternalSystemApiUtil.Java:364)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.Java:984)
    at com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil$5.run(ExternalSystemApiUtil.Java:361)
    at Java.awt.event.InvocationEvent.dispatch(InvocationEvent.Java:301)
    at Java.awt.EventQueue.dispatchEventImpl(EventQueue.Java:744)
    at Java.awt.EventQueue.access$400(EventQueue.Java:97)
    at Java.awt.EventQueue$3.run(EventQueue.Java:697)
    at Java.awt.EventQueue$3.run(EventQueue.Java:691)
    at Java.security.AccessController.doPrivileged(Native Method)
    at Java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.Java:75)
    at Java.awt.EventQueue.dispatchEvent(EventQueue.Java:714)
    at com.intellij.ide.IdeEventQueue.e(IdeEventQueue.Java:697)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.Java:524)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.Java:335)
    at Java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.Java:201)
    at Java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.Java:116)
    at Java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.Java:105)
    at Java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.Java:101)
    at Java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.Java:93)
    at Java.awt.EventDispatchThread.run(EventDispatchThread.Java:82)
2014-11-03 16:41:07,002 [ 991551]  ERROR - vice.AndroidProjectDataService - IntelliJ IDEA 13.1.5  Build #IU-135.1289 
2014-11-03 16:41:07,002 [ 991551]  ERROR - vice.AndroidProjectDataService - JDK: 1.8.0_05 
2014-11-03 16:41:07,002 [ 991551]  ERROR - vice.AndroidProjectDataService - VM: Java HotSpot(TM) 64-Bit Server VM 
2014-11-03 16:41:07,002 [ 991551]  ERROR - vice.AndroidProjectDataService - Vendor: Oracle Corporation 
2014-11-03 16:41:07,003 [ 991552]  ERROR - vice.AndroidProjectDataService - OS: Windows 8 
2014-11-03 16:41:07,003 [ 991552]  ERROR - vice.AndroidProjectDataService - Last Action: ExternalSystem.RefreshAllProjects 
2014-11-03 16:41:07,290 [ 991839]   INFO - indexing.UnindexedFilesUpdater - Indexable files iterated in 6 ms 
2014-11-03 16:41:07,290 [ 991839]   INFO - indexing.UnindexedFilesUpdater - Unindexed files update started: 0 files to update 
2014-11-03 16:41:07,290 [ 991839]   INFO - indexing.UnindexedFilesUpdater - Unindexed files update done in 0 ms 

Je fais quelque chose de mal? Ou, pour le moment, il n'est pas possible d'utiliser le nouveau plug-in Android Gradle sur IntelliJ, même si j'ai lu qu'IntelliJ devrait avoir toutes les fonctionnalités d'Android Studio.

PS: J'utilise la version IntelliJ Ultimate et j'évite de passer à Android Studio car certaines fonctionnalités de la version Ultimate ne seront pas disponibles dans Android Studio.

[ Update ] Après quelques recherches supplémentaires, j'ai trouvé dans une autre SO question qu'IntelliJ ne suivait pas le plugin Android Gradle. Il y a un certain délai entre AS et IntelliJ. Plus d'informations peuvent être trouvées ici: Quelle est la version du plugin Android incluse dans IntelliJ IDEA? sur la réponse @Scott Barta.

Comme il semble, IntelliJ 13.1.5 ne prend en charge que com.Android.tools.build:gradle:0.13.0. Peut-être que dans quelques jours/semaines, IntelliJ tirera le plug-in Android Gradle d'AS et le placera dans leur produit.

31
Ionut Negru

Ceci est une copie de UnsupportedMethodException Android Studio 0.8.9

Vous devez soit mettre à niveau Android Studio à la version 0.9, soit rétrograder le plugin Android à un niveau inférieur à 14 dans votre build.gradle.

buildscript {
  repositories {
    mavenCentral()
  }
  dependencies {
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.Android.tools.build:gradle:0.13.+'
  }
}
3
Todorus

Juste mettre à jour ne fonctionne pas pour moi. ce qui a fonctionné, c’est de mettre à jour la version bêta d’Udate dans le canal des Canaries après la mise à jour de la version bêta.

Il suffit de cliquer sur update puis de changer de chaîne et de cliquer sur oK

2
Netero

juste essayer ceci https://stackoverflow.com/a/22308639/663540

Lorsque j'ai mis à jour les plugins Gradle vers 0.14 dans build.gradle, j'ai rencontré l'erreur DefaultActivity non trouvée, j'ai essayé la réponse ci-dessus et j'ai finalement réussi à construire dans IDEA 14.

Il semble que votre pile d’erreur soit liée au problème que j’ai rencontré.

0
Zack

J'ai testé avec la version 139.658.4, publiée le 4 décembre 2014, et cela fonctionne très bien avec le plugin 0.14.4.

Si vous voulez essayer:

http://confluence.jetbrains.com/display/IDEADEV/IDEA+14+EAP

0
Felipe Duarte