通过考虑导入依赖项运行java程序

时间:2014-12-22 12:11:03

标签: java import uima

我在位置有java文件。

/root/Desktop/software/UIMA/yagogit/yodaqa/src/main/java/cz/brmlab/yodaqa/analysis/question/FocusGenerator.java

此文件是整个项目的一部分 - FocusGenerator.java

它正在从UIMA和其他一些软件包中导入几个类。 (我已在我的系统上配置UIMA)

import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
import org.apache.uima.fit.component.JCasAnnotator_ImplBase;
import org.apache.uima.UimaContext;
import org.apache.uima.resource.ResourceInitializationException;
import cz.brmlab.yodaqa.model.TyCor.LAT;
import cz.brmlab.yodaqa.provider.OpenNlpNamedEntities;
import de.tudarmstadt.ukp.dkpro.core.api.lexmorph.type.pos.POS;
import de.tudarmstadt.ukp.dkpro.core.api.ner.type.NamedEntity;

在自述文件后执行整个项目时,效果很好。但我想测试每个程序,如上所述。当我尝试使用javac进行编译时,会出现错误cannot find symbol,如下所示

ATByFocus.java:77: cannot find symbol
symbol  : class ImplicitQLAT
location: class cz.brmlab.yodaqa.analysis.question.LATByFocus
            addFocusLAT(jcas, focus, "amount", null, 33914, 0.0, new ImplicitQLAT(jcas));
                                                                     ^
LATByFocus.java:83: cannot find symbol
symbol  : class LAT
location: class cz.brmlab.yodaqa.analysis.question.LATByFocus
            addFocusLAT(jcas, focus, text, pos, 0, 0.0, new LAT(jcas));

等等。

执行此文件的正确方法是什么。我尝试在eclipse中导入它,但在eclipse中它也无法作为项目导入。

1 个答案:

答案 0 :(得分:0)

很难单独制造YodaQA的碎片。我认为在YodaQA中工作要简单得多,但要创建自定义主类,它将直接调用FocusGenerator或您想要的任何其他类。

要添加另一个主类并执行它,您需要添加另一个gradle目标。有关一些示例,请参阅build.gradle:tsvgs,biocrftrain等。