1

AndroidAnnotationsをmaven/ideaプロジェクトに追加しようとしています。これが私が今持っているものです:

マニフェスト

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="ua.avtopoisk"
      android:versionCode="1" android:versionName="0.5">

<uses-sdk android:minSdkVersion="1"
          android:targetSdkVersion="8"/>


<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.INTERNET"/>

<application android:name=".AvtopoiskApplication" android:icon="@drawable/icon"      android:label="@string/app_name">
    <activity android:name=".activites.SearchActivity_"
              android:screenOrientation="portrait"
              android:configChanges="keyboardHidden|orientation">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    <activity android:name=".activites.SearchResultActivity"
              android:screenOrientation="portrait"
              android:configChanges="keyboardHidden|orientation"
              android:label="@string/app_name"/>
</application>

Mavenの依存関係

<dependency>
            <groupId>com.googlecode.androidannotations</groupId>
            <artifactId>androidannotations</artifactId>
            <version>2.6</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.googlecode.androidannotations</groupId>
            <artifactId>androidannotations</artifactId>
            <classifier>api</classifier>
            <version>2.6</version>
        </dependency>

活動を開始する

@EActivity(R.layout.search)
    public class SearchActivity extends Activity {
    }

また、ここに示すようにプロジェクト設定を編集しましたhttps://github.com/ealden/android-annotations-idea-test/blob/master/project-settings-guide.png

正常にコンパイルされますが、このアプリケーションを実行しようとすると、次のように表示されます。

10-16 16:39:49.789: ERROR/AndroidRuntime(15972): FATAL EXCEPTION: main
            java.lang.RuntimeException: Unable to instantiate activity    ComponentInfo{ua.avtopoisk/ua.avtopoisk.activites.SearchActivity_}:   java.lang.ClassNotFoundException: ua.avtopoisk.activites.SearchActivity_ in loader   dalvik.system.PathClassLoader[/data/app/ua.avtopoisk-2.apk]
            at   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1573)
            at    android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
            at android.app.ActivityThread.access$1500(ActivityThread.java:117)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:130)
            at android.app.ActivityThread.main(ActivityThread.java:3687)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:507)
            at   com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
            at dalvik.system.NativeStart.main(Native Method)
            Caused by: java.lang.ClassNotFoundException:   ua.avtopoisk.activites.SearchActivity_ in loader   dalvik.system.PathClassLoader[/data/app/ua.avtopoisk-2.apk]
            at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
            at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
            at   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565)
            ... 11 more

ヒントをいただければ幸いです。

アップデート

Mavenでアプリケーションをビルドすると、すべて問題がないことがわかりましたが、IDEAでアプリケーションをビルドしても、ClassNotFoundExceptionが発生します。何が悪いのかまだわかりません

更新2

eclipseを使用してプロジェクトをビルドしようとしましたが、同じエラーが発生しました。また、Androidアノテーションのサンプルプロジェクト(HelloWorldEclipse)をビルドしようとしましたが、同じエラーが発生します

4

1 に答える 1

0

問題を見つけました!ソースが生成されたフォルダ生成は、IDEAによって除外されました([設定]->[コンパイラ]->[除外])。今は問題なく動作しますが、私はまだそれが本当の方法であることに興味を持っています。

于 2012-10-17T14:16:00.327 に答える