0

FQPN を使用せずにクラスの import ステートメントを使用すると、Maven (3.0.3) を使用した AndroidAnnotations の処理が失敗します。

これは失敗します:

コードでのインポートと FQPN の使用の違いに注意してください。App クラスへの参照については、私の場合は「デルタ」です。

import com.my_project.delta.android.Delta_;

/**
 * Splash screen with logo.
 */
@EActivity(R.layout.act_splash)
public class Splash extends BaseActivity {

    /**
     * Reference to application.
     */
    @App
    protected Delta_ delta;

これはうまくいきますが:

/**
 * Splash screen with logo.
 */
@EActivity(R.layout.act_splash)
public class Splash extends BaseActivity {

    /**
     * Reference to application.
     */
    @App
    protected com.my_project.delta.android.Delta_ delta;

以下のようなエラー:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project com.my_project.delta.android: Compilation failure
[ERROR] /Users/user/Projects/My-Project/delta-android/target/generated-sources/annotations/com/my_project/delta/android/activity/Splash_.java:[29,19] cannot find symbol
[ERROR] symbol:   class Delta_
[ERROR] location: class com.my_project.delta.android.activity.Splash_
[ERROR] -> [Help 1]

pom.xml: http://pastebin.com/HhxCVYmN

AndroidAnnotations のバグでしょうか。

4

1 に答える 1

1

3.0-SNAPSHOTバージョンを使用していることがわかります。ライブラリのコンパイルに使用したコミットを教えてください。これは、最後に実装された機能の問題である可能性があります。

編集:生成されたクラスを使用していることを確認しました。これで試してみてください:

@App
Delta delta;
于 2013-02-19T19:01:29.877 に答える