1

我正在使用GATK,这是一个用于生物信息学的 java 工具。它在后台使用 org.reflections.Reflections 来加载一些插件。

我的插件已编译但在类路径中时没有被 GATK 找到/加载,并且类似的工具可以正常工作。通过删除部分代码,我将问题缩小到导致我的问题的以下行(请参阅filter):

(...)
ctx.getAlleles().stream().filter(T->!(T.isSymbolic() || T.isNoCall())).mapToInt(new ToIntFunction<Allele>() {
    public int applyAsInt(Allele value) {return value.length();};
    });
(...)

如果我将上面的行更改为:

(...)
ctx.getAlleles().stream().mapToInt(new ToIntFunction<Allele>() {
        public int applyAsInt(Allele value) {return value.length();};
    });
(...)

如果该行是,它也会被加载:

final Predicate<Allele> afilter = new Predicate<Allele>() {
    @Override
    public boolean test(Allele a) {
        return !(a.isNoCall() || a.isSymbolic());
    }
};
ctx.getAlleles().stream().filter(afilter).mapToInt(new ToIntFunction<Allele>() {
        public int applyAsInt(Allele value) {return value.length();};
    });

为什么 ?

4

0 回答 0