2013-04-27 51 views
2

我想在Android上使用lambdaj,但與每一個簡單的調用,我讓我得到一個異常(java.lang.ExceptionInInitializerError)。lambdaj失敗java.lang.ExceptionInInitializerError與Android上的任何調用

,填補了集合類是:

@DatabaseTable(tableName = "sections") 
public class Section { 

    @DatabaseField(id = true, unique = true) 
    private int id; 

    @DatabaseField(canBeNull = false) 
    private String name; 

    public Section() { 

    } 

    public int getId() { 
     return id; 
    } 

    public void setId(int id) { 
     this.id = id; 
    } 

    public String getName() { 
     return name; 
    } 

    public void setName(String name) { 
     this.name = name; 
    } 
} 

註解由ORMLite使用。我留下他們,以防他們可能有關聯。但我對此表示懷疑。

而現在,如果我嘗試做一個簡單的通話一樣,它崩潰:

List<Section> sections = fillSections(); //this is correctly filled 
select(sections, having(on(Section.class).getId(), Matchers.greaterThan(1))) 

的logcat:

FATAL EXCEPTION: main 
java.lang.ExceptionInInitializerError 
    at ch.lambdaj.proxy.ProxyUtil.createEnhancer(ProxyUtil.java:89) 
    at ch.lambdaj.proxy.ProxyUtil.createProxy(ProxyUtil.java:49) 
    at ch.lambdaj.function.argument.ArgumentsFactory.createPlaceholder(ArgumentsFactory.java:68) 
    at ch.lambdaj.function.argument.ArgumentsFactory.registerNewArgument(ArgumentsFactory.java:58) 
    at ch.lambdaj.function.argument.ArgumentsFactory.createArgument(ArgumentsFactory.java:50) 
    at ch.lambdaj.function.argument.ArgumentsFactory.createArgument(ArgumentsFactory.java:39) 
    at ch.lambdaj.Lambda.on(Lambda.java:63) 

令我百思不解的是,我想在一個Java控制檯非常相同的代碼應用程序和它的工作...

任何想法,爲什麼這不會在Android上工作?

謝謝。

回答

相關問題