définition de la propriété du système

J’essaie de suivre cette instruction pour la porte courante incorporée

Il dit: “La propriété système gate.home doit être définie sur le répertoire d’installation de la porte.” (http://gate.ac.uk/wiki/code-repository/)

Comment puis-je faire cela?

Aussi, lorsque j’essaie d’exécuter l’exemple de code d’EmbeddedAnnie, j’obtiens l’erreur suivante: (je ne sais pas si c’est lié ou non).

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 

Ted.

Vous pouvez le faire via plusieurs manières.

La première est lorsque vous exécutez votre application, vous pouvez lui transmettre un drapeau.

java -Dgate.home="http://gate.ac.uk/wiki/code-repository" your_application

Ou définissez-le par programmation dans le code avant le morceau de code qui nécessite cet ensemble de propriétés. Java conserve un object Properties pour une configuration à l’échelle du System .

 Properties props = System.getProperties(); props.setProperty("gate.home", "http://gate.ac.uk/wiki/code-repository"); 
 System.setProperty("gate.home", "/some/directory"); 

Pour plus d’informations, voir:

  • Le tutoriel Propriétés système
  • Classe doc pour System.setProperty( Ssortingng key , Ssortingng value ) .

Pour JBoss , dans standalone.xml, mettez après.

      

Pour éclipse:

http://www.avajava.com/tutorials/lessons/how-do-i-set-system-properties.html?page=2

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

Après cela, vous pouvez récupérer sa valeur plus tard en appelant

 Ssortingng value = System.getProperty("gate.home"); 

Vous avez besoin du chemin du répertoire des plugins de votre installation GATE locale. Donc, si Gate est installé dans “/home/user/GATE_Developer_8.1”, le code ressemble à ceci:

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

Vous n’avez pas besoin de définir gate.home à partir de la ligne de commande. Vous pouvez le définir dans votre application, aussi longtemps que vous le définissez AVANT d’appeler Gate.init ().