自动启动GATE

时间:2014-07-01 14:12:17

标签: java automation startup gate

我是Java初学者,我需要做以下事情: - 我有一个txt文件作为输入文本,我想在GATE中分析; - 我想让GATE自动启动并在此文本上运行语言分析(Corpus Pipeline)。

我的想法是打开并阅读Java中的txt文件,然后将其转换为GATE文档,但我有以下疑问:

1)如何将文本转换为GATE文档?

2)如何让GATE自动启动?

感谢您帮助我。

1 个答案:

答案 0 :(得分:0)

在GATE中,您不必担心阅读和转换常见文件,如.txt,.pdf,.html等.GATE会自动执行此操作。

像这样初始化GATE:

private static void initGateApplication(String gateXgappFileLoc, String gateHome) {
        try {           
            try {
                if (Gate.getGateHome() == null)
                    Gate.setGateHome(new File(gateHome));
            } 
            catch (Exception ex) {
                ex.printStackTrace(System.out);
            }           
            try {
                if (!Gate.isInitialised())
                    Gate.init();
            } 
            catch (GateException e) {
                e.printStackTrace(System.out);
            }
            System.out.println("Initializing gate application...");
            gappFile = new File(gateXgappFileLoc);
            gateApplication = (CorpusController) PersistenceManager.loadObjectFromFile(gappFile);
        } 
        catch (Exception e) {
            e.printStackTrace(System.out);
        }
    }

使用您的文本文件运行您的GATE管道:

public void extract(String inputFileName, String docID, CorpusController gateApplication) throws GateException, IOException 
{

      CorpusController application = gateApplication;

      Corpus corpus = Factory.newCorpus("Sample Corpus");
      application.setCorpus(corpus);

      File docFile = new File(inputFileName);
      System.out.print("Processing document " + docFile + "...");
      Document doc = Factory.newDocument(docFile.toURL(), encoding);

      // add document to the corpus
      corpus.add(doc);

      // run the application
      application.execute();
      System.out.println("Done running GATE pipeline...");
      // Now use get annotations from 'doc' object
}