I am trying to follow this instruction for running gate embedded.

It says: "System property gate.home should be set to the gate installation directory." ()

How do I do this?

Also when I try to run the example code of EmbeddedAnnie I get the following error: ( I don't know if it is related or not ).

Initialising GATE... GATE home system property ("gate.home") not set. Attempting to guess... Using "C:\Program Files (x86)\GATE-6.0" as GATE Home. If this is not correct please set it manually using the -Dgate.home option in yo ur start-up script Using C:\Program Files (x86)\GATE-6.0 as GATE home Using C:\Program Files (x86)\GATE-6.0\plugins as installed plug-ins directory. Using C:\Program Files (x86)\GATE-6.0\gate.xml as site configuration file. Using C:\Users\UNST\gate.xml as user configuration file Using C:\Users\UNST\gate.session as user session file Exception in thread "main" java.lang.NoClassDefFoundError: gate/creole/gazetteer /AbstractGazetteer at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) at java.lang.ClassLoader.defineClass(ClassLoader.java:616) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14 1) at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) at java.net.URLClassLoader.access$000(URLClassLoader.java:58) at java.net.URLClassLoader$1.run(URLClassLoader.java:197) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at java.lang.ClassLoader.loadClass(ClassLoader.java:296) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:296) at gate.util.GateClassLoader.loadClass(GateClassLoader.java:63) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) at gate.creole.CreoleAnnotationHandler.processAnnotationsForResource(Cre oleAnnotationHandler.java:193) at gate.creole.CreoleAnnotationHandler.processAnnotations(CreoleAnnotati onHandler.java:169) at gate.creole.CreoleAnnotationHandler.processAnnotations(CreoleAnnotati onHandler.java:173) at gate.creole.CreoleAnnotationHandler.processAnnotations(CreoleAnnotati onHandler.java:173) at gate.creole.CreoleAnnotationHandler.processAnnotations(CreoleAnnotati onHandler.java:157) at gate.creole.CreoleRegisterImpl.processFullCreoleXmlTree(CreoleRegiste rImpl.java:358) at gate.creole.CreoleRegisterImpl.parseDirectory(CreoleRegisterImpl.java :341) at gate.creole.CreoleRegisterImpl.registerDirectories(CreoleRegisterImpl .java:306) at gate.Gate.initCreoleRepositories(Gate.java:449) at gate.Gate.init(Gate.java:230) at StandAloneAnnie.main(StandAloneAnnie.java:69) Caused by: java.lang.ClassNotFoundException: gate.creole.gazetteer.AbstractGazet teer at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 27 more 

5 Answers

You can do this via a couple ways.

One is when you run your application, you can pass it a flag.

java -Dgate.home="" your_application

Or set it programmatically in code before the piece of code that needs this property set. Java keeps a Properties object for System wide configuration.

Properties props = System.getProperties(); props.setProperty("gate.home", ""); 
7
System.setProperty("gate.home", "/some/directory"); 

For more information, see:

2
System.setProperty("gate.home", "/some/directory"); 

After that you can retrieve its value later by calling

String value = System.getProperty("gate.home"); 
1

For JBoss, in standalone.xml, put after .

<extensions> </extensions> <system-properties> <property name="my.project.dir" value="/home/francesco" /> </system-properties> 

For eclipse:

1

You need the path of the plugins directory of your local GATE install. So if Gate is installed in "/home/user/GATE_Developer_8.1", the code looks like this:

System.setProperty("gate.home", "/home/user/GATE_Developer_8.1/plugins"); 

You don't have to set gate.home from the command line. You can set it in your application, as long as you set it BEFORE you call Gate.init().

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy