错误导入Maven的Android的Android项目与ADT 20到Eclipse(Error i

2019-07-30 04:54发布

我更新了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的机器人)项目工作区中的正常工作。

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

有谁能够解决呢? 需要对Android的M2E连接器的更新?

更新:这是我的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>

谢谢。

Answer 1:

这是一个已知的问题与M2E-的Android插件造成由于ADT API的变化:

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

当我们找到一个解决,请耐心等待。


更新:新的0.4.2版本修复了这个问题,今天发布,请运行Eclipse更新(帮助- >检查更新),让我知道这是否解决您的问题。



Answer 2:

编辑:不是这样做,你现在可能会更好正从李嘉图的更新项目github上 ,切换到adt-20分支,与Maven构建,卸载M2E连接器,如下所述,并进行安装,me.gladwell新M2E连接器.eclipse.m2e.android.update /目标/存储库作为本地资源库,也如下所述。 谢谢,里卡多!


我有这个问题,不能建立我的项目。 我得到全面的唯一方法是降级ADT至18.0.0。 我找不到通过SDK管理器等。这样做的一种方式,所以这竟然是有些痛苦的 - 尽管我很可能没有做的最明智的方法! 无论如何,我想我会寄我所经历的情况下,它可以帮助任何人。 我离开了许许多多的Eclipse重新启动。 :)

这是在Linux上的Eclipse 3.7。

  • 获得ADT压缩: http://dl.google.com/android/ADT-18.0.0.zip
  • 获取Android SDK工具为您的操作系统归档: http://dl.google.com/android/android-sdk_r18-linux.tgz (更换windows.zip或macosx.zip linux.tgz -对不起,堆栈溢出只允许我两个链接在我的帖子!)。
  • 禁用自动软件更新:窗口 - >首选项 - >安装/更新 - >自动更新,取消选中“自动查找新的更新,并通知我”。
  • 卸载Android SDK工具:窗口 - > Android的SDK管理器,检查Android SDK工具,然后单击 '删除1包'。
  • 卸载ADT:帮助 - >安装新软件 - >什么已经安装? - >安装的软件,选择所有的Android *组件和Android配置为M2E,然后点击“卸载”。
  • 提取ADT-18.0.0.zip并安装:帮助 - >安装新软件 - >添加 - >本地并浏览到您提取它。 给本地资源库的名称,然后单击确定,然后从下拉菜单中选择“与工作”中选择它,从它安装的软件。
  • 摘自Android的sdk_r18归档工具目录到你的Android SDK的目录。
  • 安装Android M2E连接器:首选项 - >的Maven - >搜索,点击“打开目录”,然后选择连接。 取消任何ADT 20.0的功能,如果提示。


Answer 3:

现在,它的固定与ADT 20+作品安卓Maven的连接器,只需要从以下更新站点安装更新: http://rgladwell.github.com/m2e-android/updates/master/



Answer 4:

只要打开你的文件。 XML和“图形布局”(在蚀的情况下)以下选项卡。 你还在那里找到位于右上方,详细介绍了在我的情况下,用18版所使用的版本的Android图标,我选择的版本17和错误消失。



文章来源: Error importing Maven Android Android project to Eclipse with ADT 20