Ошибка импорта проекта Maven Android Android в Eclipse с ADT 20

Я обновил плагин ADT до последней версии (20) и инструмента android-sdk. Теперь, когда я пытаюсь импортировать существующий Android Maven в Eclipse, вызывают исключение An internal error occurred during: "Importing Maven projects". com/android/io/StreamException An internal error occurred during: "Importing Maven projects". com/android/io/StreamException , и создает проект eclipse, но не как Android-проект, как и раньше. Предыдущие существующие (maven android) проекты в рабочей области прекрасно работают.

Исключительная трассировка Eclipse при импорте проекта следующая:

 !ENTRY org.eclipse.osgi 2 1 2012-06-29 19:02:34.421 !MESSAGE NLS unused message: LifecycleMappingPropertyPage_this_message in: org.eclipse.m2e.core.ui.internal.messages !ENTRY org.eclipse.core.jobs 4 2 2012-06-29 19:03:03.953 !MESSAGE An internal error occurred during: "Importing Maven projects". !STACK 0 java.lang.NoClassDefFoundError: com/android/io/StreamException at me.gladwell.eclipse.m2e.android.project.EclipseAndroidProjectFactory.createAndroidProject(EclipseAndroidProjectFactory.java:17) at me.gladwell.eclipse.m2e.android.project.EclipseAndroidProjectFactory.createAndroidProject(EclipseAndroidProjectFactory.java:1) at me.gladwell.eclipse.m2e.android.AndroidMavenProjectConfigurator.configure(AndroidMavenProjectConfigurator.java:62) at org.eclipse.m2e.core.project.configurator.AbstractLifecycleMapping.configure(AbstractLifecycleMapping.java:109) at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:414) at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.configureNewMavenProject(ProjectConfigurationManager.java:240) at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.importProjects(ProjectConfigurationManager.java:156) at org.eclipse.m2e.core.ui.internal.wizards.MavenImportWizard$1.doCreateMavenProjects(MavenImportWizard.java:164) at org.eclipse.m2e.core.ui.internal.wizards.AbstractCreateMavenProjectsOperation.run(AbstractCreateMavenProjectsOperation.java:73) at org.eclipse.m2e.core.ui.internal.wizards.MavenImportWizard$3.runInWorkspace(MavenImportWizard.java:249) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: java.lang.ClassNotFoundException: com.android.io.StreamException at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 12 more 

Может ли кто-нибудь его решить? Требуется обновление соединителя m2e Android?

Обновление: Это мой pom.xml:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>your.company</groupId> <artifactId>my-android-application</artifactId> <version>1.0-SNAPSHOT</version> <packaging>apk</packaging> <name>my-android-application</name> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>2.3.3</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <sourceDirectory>src</sourceDirectory> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.2.0</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <!-- platform or api level (api level 4 = platform 1.6)--> <platform>10</platform> </sdk> </configuration> </plugin> </plugins> </build> </project></project> при <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>your.company</groupId> <artifactId>my-android-application</artifactId> <version>1.0-SNAPSHOT</version> <packaging>apk</packaging> <name>my-android-application</name> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>2.3.3</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <sourceDirectory>src</sourceDirectory> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.2.0</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <!-- platform or api level (api level 4 = platform 1.6)--> <platform>10</platform> </sdk> </configuration> </plugin> </plugins> </build> </project></project> , <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>your.company</groupId> <artifactId>my-android-application</artifactId> <version>1.0-SNAPSHOT</version> <packaging>apk</packaging> <name>my-android-application</name> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>2.3.3</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <sourceDirectory>src</sourceDirectory> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.2.0</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <!-- platform or api level (api level 4 = platform 1.6)--> <platform>10</platform> </sdk> </configuration> </plugin> </plugins> </build> </project></project> 

Благодарю.

Solutions Collecting From Web of "Ошибка импорта проекта Maven Android Android в Eclipse с ADT 20"

Это известная проблема с подключаемым модулем m2e-android, вызванным изменениями в ADT API:

https://github.com/rgladwell/m2e-android/issues/89

Пожалуйста, будьте терпеливы, пока мы найдем исправление.


Обновление: новый выпуск версии 0.4.2 устраняет эту проблему, выпущенную сегодня, запустите обновление Eclipse (Справка -> Проверить наличие обновлений) и сообщите мне, разрешает ли это ваши проблемы.

Вместо этого вы можете лучше получить обновленный проект Ricardo от github , перейти на ветку adt-20 , построить с Maven, удалить соединитель M2E, как описано ниже, и установить новый разъем M2E от me.gladwell .eclipse.m2e.android.update / target / repository как локальный репозиторий, также как описано ниже. Спасибо, Рикардо!


У меня была эта проблема, и я не мог построить свой проект. Единственный способ, которым я обходился, – понизить ADT до 18.0.0. Я не мог найти способ сделать это через SDK Manager и т. Д., Так что это оказалось немного испытанием – хотя я, скорее всего, не сделал этого самым разумным способом! Во всяком случае, я думал, что опубликую то, что я пережил, если это кому-то поможет. Я забыл перезапустить Eclipse. 🙂

Это было на Eclipse 3.7 на Linux.

  • Получите ADT zip: http://dl.google.com/android/ADT-18.0.0.zip
  • Получите архив Android SDK Tools для своей ОС: http://dl.google.com/android/android-sdk_r18-linux.tgz (замените linux.tgz на windows.zip или macosx.zip – извините, Stack Overflow только позволяет мне Две ссылки в моем посте!).
  • Отключите автоматическое обновление программного обеспечения: Окно -> Настройки -> Установить / Обновить -> Автоматические обновления, снимите флажок «Автоматически находить новые обновления и уведомлять меня».
  • Удалите Android SDK Tools: Window -> Android SDK Manager, проверьте Android SDK Tools и нажмите «Удалить 1 пакет».
  • Удалить ADT: Справка -> Установить новое программное обеспечение -> Что уже установлено? -> Установленное программное обеспечение, выберите все компоненты Android * и Android Configurator для M2E и нажмите «Удалить».
  • Извлеките ADT-18.0.0.zip и установите: Справка -> Установить новое программное обеспечение -> Добавить -> Локальное и просмотреть, где вы его извлекли. Дайте локальному репозиторию имя и нажмите «ОК», затем выберите его из раскрывающегося списка «Работа с» и установите из него доступное программное обеспечение.
  • Извлеките каталог инструментов из архива android-sdk_r18 в каталог android-sdks.
  • Установите Android M2E-коннектор: Настройки -> Maven -> Открытие, нажмите «Открыть каталог», затем выберите соединитель. Отмените выбор любых функций ADT 20.0, если будет предложено.

Теперь соединитель andriod maven, установленный для работы с ADT 20+, нуждается только в установке обновления со следующего сайта обновления: http://rgladwell.github.com/m2e-android/updates/master/

Просто откройте свой файл. XML и вкладку ниже «Графический макет» (в случае eclipse). Вы все еще там находите значок Android, который находится в верхнем правом углу, в котором подробно описывается версия, которая используется в моем случае, использовалась версия 18, я выбрал версию 17, и ошибка исчезла.