2012-04-24 6 views
3
abstract method foo(E) in wtf.is.going.on cannot be accessed directly super.foo(e) 

ANTビルドファイルを自動生成を使用してANTと私のプロジェクトをコンパイルするとき、私はそのエラーを取得しますANDROIDから。抽象メソッドfoo(E)は、ANTでコンパイルsuper.foo(e)に直接アクセスすることはできません

同じプロジェクトをECLIPSEにコンパイルすると、問題はありません。何が起こっている?ここで


は何が起こっているかである。

package wtf.is.going.on; 
public interface DAOMutator<E> { 

    public void foo(E e); 

} 

package wtf.is.going.on; 
public class DAOBImpl<E extends DAO> implements DAOMutator<E> { 

    @Override 
    public void foo(DAO dao) { 
     //do some stuff 
    } 

} 

package wtf.is.going.on.more; 
public class VMBImpl <E extends someDao> extends DAOBImpl<E> { 

    @Override 
    public void foo(E e) { 
    super.foo(e); // ERROR OCCURS HERE 
    } 

} 

正確なエラー出力:

012あなたはそれが正常に動作してい

public void foo(E dao) 

にDAOBImplに

public void foo(DAO dao) 

を切り替えると

[javac] MYPATH\src\wtf\is\going\on\more\VMBImpl.java:6: abstract method foo(E) in wtf.is.going.on.DAOMutator cannot be accessed directly 
[javac]    super.foo(e); 
+1

私の 'public interface DAOMutator 'も 'public interface DAOMutator 'に変更する必要がありました。これは他の問題を修正しました。 – prolink007

+1

+1のパッケージ名= P – Windle

答えて

3

+0

はい。それは他の問題を引き起こしましたが、少なくとも今はうまくいきます。ありがとう – prolink007

関連する問題