Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Eclipse中运行Android应用程序会导致ClassNotFoundException_Java_Android_Eclipse_Maven - Fatal编程技术网

Java 在Eclipse中运行Android应用程序会导致ClassNotFoundException

Java 在Eclipse中运行Android应用程序会导致ClassNotFoundException,java,android,eclipse,maven,Java,Android,Eclipse,Maven,几个月前,我在Eclipse中创建了一个带有Android原型的Maven项目。从那时起,我就能够直接从Eclipse构建和部署我的应用程序,而且我还相信Maven安装能够正常工作(我通常获得构建成功)。然而,几天前我才意识到这一“成功”并不意味着什么——我尝试将使用Maven构建的apk部署到我的手机上(通过终端),应用程序立即崩溃。我注意到在构建过程中,我收到了一堆“Dx坏类文件魔术(cafebabe)或版本(0033.0000)”错误,因此我认为编译器存在一些问题-使用6而不是7,反之亦然

几个月前,我在Eclipse中创建了一个带有Android原型的Maven项目。从那时起,我就能够直接从Eclipse构建和部署我的应用程序,而且我还相信Maven安装能够正常工作(我通常获得构建成功)。然而,几天前我才意识到这一“成功”并不意味着什么——我尝试将使用Maven构建的apk部署到我的手机上(通过终端),应用程序立即崩溃。我注意到在构建过程中,我收到了一堆“Dx坏类文件魔术(cafebabe)或版本(0033.0000)”错误,因此我认为编译器存在一些问题-使用6而不是7,反之亦然。 在尝试在线找到的一系列解决方案时,我还更新了我的SDK工具,这导致Eclipse告诉我必须更新到23版,因为我正在使用22.6。但是,我无法更新IDE,因为我遇到了“冲突依赖项”错误。与此同时,我也阅读了所有的新版本有很多错误,所以我尝试回去,但现在我的工具文件夹从sdk文件夹中丢失了,没有任何效果。这也是我无法再从Eclipse运行应用程序的时候-我可以构建它,但尝试在手机上运行它会导致以下错误:

08-25 15:15:39.965: E/AndroidRuntime(23081): java.lang.RuntimeException: Unable
to instantiate activity ComponentInfo{me.comocomo.nutrino/me.comocomo.nutrino.
MainActivity}: java.lang.ClassNotFoundException: Didn't find class "me.comocomo.
nutrino.MainActivity" on path: DexPathList[[zip file "/data/app/me.comocomo.
nutrino-9.nativeLibraryDirectories=[/data/app-lib/me.comocomo.nutrino-9,
/vendor/lib, /system/lib]]
在这一点上,我放弃并下载了Eclipse的新版本,更准确地说是ADT包。这也不是很顺利,因为我在安装SVN和Maven插件时遇到了一些问题。因此,我尝试与安卓工作室合作;这要求我将我的原始项目导出为Gradle项目。我不确定导出-导入过程是否完全成功,但我决定将其搁置,并再次尝试解决Eclipse问题

不管怎么说,长话短说,我现在有了一个正在工作的Eclipse(在某种程度上,当我尝试打开它时,它仍然每隔一段时间挂起一次,然后我必须删除org.Eclipse.e4.workbench插件xml文件),特别是我下载的较新版本。我可以在Eclipse中构建我的应用程序(Maven安装失败),但我无法运行它。但是,在终端中部署apk是可行的,我的应用程序也会加载

我现在想弄明白的是:

  • 在Eclipse中运行应用程序时,如何消除ClassNotFoundException?我认为这与类路径文件有关,但a)这只是一种预感,b)我不知道到底是什么问题
  • 如何让Maven安装正常工作?目前,构建失败-我将在最后附加错误
  • 甚至在Maven安装成功之前,我也收到了“Dx bad class file magic..”警告,并跳过了这些依赖项。为了生成这些文件,我可以做些什么(这些是使用1.7编译器生成的服务器类,据我所知,它们不能使用1.6生成)
  • 这是我当前遇到的Maven错误:

    [ERROR] Failed to execute goal on project NutrinoAndroid: Could not resolve
    dependencies for project me.comocomo.nutrino:NutrinoAndroid:apk:alpha: Failed to
    collect dependencies for [com.google.android:android:jar:4.1.1.4 (provided),
    com.google.android.support:android-support-v4:jar:4 (compile),
    com.google.android.support:android-support-v7-appcompat:jar:4 (compile),
    android.support:compatibility-v7-appcompat:apklib:19.0.1 (compile),
    android.support:compatibility-v7-appcompat:jar:19.0.1 (compile),
    me.comocomo.nutrino:nutrino-api:jar:0.0.1-SNAPSHOT (compile),
    com.octo.android.robospice:robospice-google-http-client:jar:1.4.12 (compile),
    com.octo.android.robospice:robospice:jar:1.4.12 (compile),
    commons-logging:commons-logging:jar:1.1.1 (provided),
    com.google.http-client:google-http-client-jackson2:jar:1.18.0-rc (compile),
    joda-time:joda-time:jar:2.3 (compile), org.quartz-scheduler:quartz:jar:2.2.1
    (compile), org.quartz-scheduler:quartz-jobs:jar:2.2.1 (compile)]: Failed to read
    artifact descriptor for java-activation-framework:jaf:jar:1.1.1: Could not
    transfer artifact java-activation-framework:jaf:pom:1.1.1 from/to central
    (http://repo.maven.apache.org/maven2): java.io.IOException: Remotely Closed [id:
    0x33cfa965, /10.100.101.106:65051 :> repo.maven.apache.org/23.235.43.215:80] ->
    [Help 1]
    
    我不想把我所有的代码和配置文件都堆在这里,所以如果还需要什么,请告诉我,我会添加它

    谢谢

    编辑

    我的舱单:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="me.comocomo.nutrino"
    android:versionCode="10"
    android:versionName="alpha" >
    
    <uses-permission android:name="android.permission.INTERNET" />
    
    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="19" />
    <!-- android:minSdkVersion="11" -->
    
    <application
        android:allowBackup="true"
        android:icon="@drawable/planbtn"
        android:label="@string/app_name"
        android:theme="@style/Theme.AppCompat.Light" >
        <service
            android:name="com.octo.android.robospice.JacksonGoogleHttpClientSpiceService"
            android:exported="false" />
    
        <activity
            android:name="me.comocomo.nutrino.MainActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
    
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Login.LoginActivity"
            android:label="@string/title_activity_login"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.GoalsSignupActivity"
            android:label="@string/title_activity_goals_signup"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Login.SignUp.EmailSignUpActivity"
            android:label="@string/title_activity_email_sign_up"
            android:screenOrientation="portrait"
            android:theme="@style/Theme.AppCompat.Translucent"
            android:windowSoftInputMode="stateVisible" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.GoalInfoActivity"
            android:label="@string/title_activity_goal_info"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.GoalsTargetWeightFragment"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.GoalsDevicesAppsConnectFragment"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.GoalsPhysiqueLifestyleActivity"
            android:label="@string/title_activity_goals_physique_lifestyle"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.ActivityLevelActivity"
            android:label="@string/title_activity_activity_level"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.ReduceFatActivity"
            android:label="@string/title_activity_reduce_fat"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.NonFood.LogDrinkActivity"
            android:label="@string/title_activity_log_water"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.NonFood.LogSleepActivity"
            android:label="@string/title_activity_log_sleep"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.NonFood.LogMeasurementsActivity"
            android:label="@string/title_activity_log_measurements"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.NonFood.LogFeelingActivity"
            android:label="@string/title_activity_log_measurements"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.Util.SelectMealsActivity"
            android:label="@string/title_activity_select_meals"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DiaryItemTypes.Util.RateNutrinoActivity"
            android:label="@string/title_activity_rate_nutrino"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DishBreakdownActivity"
            android:label="@string/title_activity_meal_breakdown"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Goals.BasicDetailsActivity"
            android:label="@string/title_activity_basic_details"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.ChooseAlternativeActivity"
            android:label="@string/title_activity_choose_alternative"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.RecipeActivity"
            android:label="@string/title_activity_recipe"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.RateDishActivity"
            android:label="@string/title_activity_rate_dish"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.MealBreakdownActivity"
            android:label="@string/title_activity_meal_breakdown"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.DailyBreakdownActivity"
            android:label="@string/title_activity_daily_breakdown"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.MyProfileActivity"
            android:label="@string/title_activity_my_profile"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.ConnectionProblemActivity"
            android:label="@string/title_activity_connection_problem"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.BodyActivity"
            android:label="@string/title_activity_body"
            android:screenOrientation="portrait" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.FoodAllergiesActivity"
            android:label="@string/title_activity_food_allergies" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.ConnectActivity"
            android:label="@string/title_activity_connect" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.SettingsActivity"
            android:label="@string/title_activity_settings" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Profile.SetProfileActivity"
            android:label="@string/title_activity_set_profile" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.TasteActivity"
            android:label="@string/title_activity_taste" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.EditGoalsActivity"
            android:label="@string/title_activity_edit_goals" >
        </activity>
        <activity
            android:name="me.comocomo.nutrino.Diary.PinMealActivity"
            android:label="@string/title_activity_pin_meal" >
        </activity>
    </application>
    
    
    

    还有我的pom:

    <?xml version="1.0" encoding="UTF-8"?>
    
    
    
    http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 我,科莫,纽蒂诺 营养素 阿尔法 apk 营养素

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <platform.version> 4.1.1.4
        </platform.version>
        <android.plugin.version>3.5.3</android.plugin.version>
        <src.dir>src</src.dir>
    </properties>
    <repositories>
        <repository>
            <id>snapshot-repository.java.net</id>
            <name>Java.net Snapshot Repository for Maven</name>
            <url>https://maven.java.net/content/repositories/snapshots/</url>
            <layout>default</layout>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>com.google.android</groupId>
            <artifactId>android</artifactId>
            <version>${platform.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.google.android.support</groupId>
            <artifactId>android-support-v4</artifactId>
            <version>4</version>
        </dependency>
        <dependency>
            <groupId>com.google.android.support</groupId>
            <artifactId>android-support-v7-appcompat</artifactId>
            <version>4</version>
        </dependency>
        <dependency>
            <groupId>android.support</groupId>
            <artifactId>compatibility-v7-appcompat</artifactId>
            <version>19.0.1</version>
            <type>apklib</type>
        </dependency>
        <dependency>
            <groupId>android.support</groupId>
            <artifactId>compatibility-v7-appcompat</artifactId>
            <version>19.0.1</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>me.comocomo.nutrino</groupId>
            <artifactId>nutrino-api</artifactId>
            <version>0.0.1-SNAPSHOT</version>
            <exclusions>
                <exclusion>
                    <artifactId>activation</artifactId>
                    <groupId>javax.activation</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- <dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-client</artifactId> 
            <version>2.7</version> </dependency> -->
        <dependency>
            <groupId>com.octo.android.robospice</groupId>
            <artifactId>robospice-google-http-client</artifactId>
            <version>1.4.12</version>
            <exclusions>
                <exclusion>
                    <artifactId>commons-logging</artifactId>
                    <groupId>commons-logging</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.octo.android.robospice</groupId>
            <artifactId>robospice</artifactId>
            <version>1.4.12</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.google.http-client</groupId>
            <artifactId>google-http-client-jackson2</artifactId>
            <version>1.18.0-rc</version>
        </dependency>
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version>2.3</version>
        </dependency>
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
            <version>2.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz-jobs</artifactId>
            <version>2.2.1</version>
        </dependency>
    </dependencies>
    <build>
        <sourceDirectory>${src.dir}</sourceDirectory>
        <finalName>${project.artifactId}</finalName>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>com.jayway.maven.plugins.android.generation2</groupId>
                    <artifactId>android-maven-plugin</artifactId>
                    <version>${android.plugin.version}</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>16</platform>
                    </sdk>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
    
    UTF-8
    4.1.1.4
    3.5.3
    src
    snapshot-repository.java.net
    Maven的Java.net快照存储库
    https://maven.java.net/content/repositories/snapshots/
    违约
    com.google.android
    安卓
    ${platform.version}
    假如
    com.google.android.support
    android-support-v4
    4.
    com.google.android.support
    android-support-v7-appcompat
    4.
    android.support
    兼容性-v7-appcompat
    19.0.1
    apklib
    android.support
    兼容性-v7-appcompat
    19.0.1
    罐子
    我,科莫,纽蒂诺
    纽蒂诺原料药
    0.0.1-快照
    激活
    javax.activation
    com.octo.android.robospice
    robospice谷歌http客户端
    1.4.12
    公用记录
    公用记录
    com.octo.android.robospice
    机器人世界
    1.4.12
    公用记录
    公用记录
    1.1.1
    假如
    com.google.http-client
    google-http-client-jackson2
    1.18.0-rc
    乔达时间
    乔达时间
    2.3
    org.quartz-scheduler
    石英
    2.2.1
    org.quartz-scheduler
    石英工作
    2.2.1
    ${src.dir}
    ${project.artifactId}
    com.jayway.maven.plugins.android.generation2
    安卓maven插件
    ${android.plugin.version}
    符合事实的
    com.jayway.maven.plugins.android.generation2
    安卓maven插件
    16
    

    您在清单文件中添加了MainActivity.java吗?。请显示清单文件。您的启动器是FragmentActivity?@Dhruti是的,它在清单中。我马上添加清单。@Arash这是一个ActionBarAct