установка системного свойства

Я пытаюсь следовать этим инструкциям для выполнения встроенного логического элемента

Это говорит: "Свойство System gate.home должно быть установлено на каталог установки логического элемента". (http://gate.ac.uk/wiki/code-repository/)

Как я делаю это?

Также, когда я пытаюсь выполнить пример кода EmbeddedAnnie, я получаю следующую ошибку: (Я не знаю, связано ли это или не).

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.

62
задан 4 March 2011 в 08:23

5 ответов

Можно сделать это через пару путей.

Каждый - когда Вы запускаете свое приложение, можно передать его флаг.

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

Или набор это программно в коде, прежде чем часть кода, для которого нужен этот набор свойств. Java сохраняет Properties объект для System широкая конфигурация.

Properties props = System.getProperties();
props.setProperty("gate.home", "http://gate.ac.uk/wiki/code-repository");
125
ответ дан 31 October 2019 в 13:14
System.setProperty("gate.home", "/some/directory");

Для получения дополнительной информации, см.:

46
ответ дан 31 October 2019 в 13:14
System.setProperty("gate.home", "/some/directory"); 

После этого можно получить его значение позже путем вызова

String value =  System.getProperty("gate.home");
5
ответ дан 31 October 2019 в 13:14

Для JBoss, в standalone.xml, помещенном после.

<extensions>
</extensions>

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

Для затмения:

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

5
ответ дан 31 October 2019 в 13:14

Вам нужен путь каталога плагинов Вашей локальной установки ЛОГИЧЕСКОГО ЭЛЕМЕНТА. Таким образом, если Логический элемент установлен в "/home/user/GATE_Developer_8.1", код похож на это:

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

Вы не должны устанавливать gate.home из командной строки. Можно установить его в приложении, пока Вы устанавливаете его перед вызовом Gate.init ().

3
ответ дан 31 October 2019 в 13:14

Другие вопросы по тегам:

Похожие вопросы: