加载 Ruta TYPESYSTEM 时出现问题
Problems loading Ruta TYPESYSTEM
我在将类型系统导入 Ruta 时遇到问题。我的工作区中有两个项目:
- UIMA 项目位于 ./workspace/UIMA_NLP/
- Ruta 项目位于 ./workspace/RUTA_CLARIFY/
我正在尝试加载类型系统定义文件:./workspace/UIMA_NLP/descriptors/type_system/nlpTypes.xml UIMA 项目到 Ruta 脚本中。
如果我将类型系统定义复制到 Ruta 项目到 ./workspace/RUTA_CLARIFY/descriptor/nlpTypes.xml 中,我就能成功完成此操作并使用以下内容将其加载到 Ruta 脚本中:
TYPESYSTEM nlpTypes;
但是,当尝试直接从 UIMA_NLP 项目导入时,我在编辑器中得到 'error nlpTypes not found'。我尝试将类型系统描述符的完全限定目录添加到生成的 ruta 引擎中的 descriptorPaths 字段,但没有成功。
在将路径添加到描述符路径后,我在脚本中尝试了以下类型的系统导入:
TYPESYSTEM type_system.nlpTypes;
TYPESYSTEM descriptors.type_system.nlpTypes;
TYPESYSTEM UIMA_NLP.descriptors.type_system.nlpTypes;
奇怪的是,我可以在 Ruta 脚本使用导入类型和按位置导入以及导入定义的类型生成的类型系统中添加 nlpTypes.xml 类型系统描述符 nlpTypes.xml 出现在类型中。我还可以在使用自动完成时在编辑器中输入它们,然后会出现类型。但是,即使在使用自动完成来完成类型名称之后,我仍然会在编辑器中收到 'Type "typename" is not defined in this script/block' 的错误。因此,我怀疑我在这种情况下没有正确使用 TYPESYSTEM 导入。
我是否错误地使用了 TYPESYSTEM 导入?还是只能使用我预定义的类型系统描述符将其复制到 Ruta 项目中?
将类型系统文件夹的绝对路径添加到分析引擎描述符的 descriptiorPaths
配置参数中应该可以。但是,您在哪个 xml 描述符中添加了它?如果它是你的脚本生成的描述符,那么修改将被workbench覆盖。您需要将附加路径添加到项目的模板描述符 BasicEngine.xml
。
如果 descriptorPath 包含其他项目的描述符文件夹的路径,则正确的导入将显示为:TYPESYSTEM type_system.nlpTypes;
一般情况下,你会从Ruta项目中引用UIMA项目:Right-click在Ruta项目->Properties->Project References->勾选UIMA项目
当 workbench 构建分析引擎描述符时,引用项目的默认文件夹会自动包含在 descriptorPaths 中。对于 UIMA Pear 项目,这将是 desc
文件夹。对于 Java 项目,这将是输出文件夹,例如 bin 或 target/classes.
你报的奇怪错误真是奇怪。听起来像是项目设置或描述符的问题,不是 up-to-date。尝试清理项目:菜单->项目->清理...
由于项目设置,错误可能是误报。您可以启动脚本并在输出文件夹中获取结果吗?
我个人建议仅使用简单的 Ruta 项目来制作原型。对于严肃的规则项目,特别是如果对其他项目有依赖性,我宁愿推荐一个 maven-built 项目。为了简化设置,还有一个用于 ruta 项目的原型。
免责声明:我是 UIMA Ruta 的开发者
我在将类型系统导入 Ruta 时遇到问题。我的工作区中有两个项目:
- UIMA 项目位于 ./workspace/UIMA_NLP/
- Ruta 项目位于 ./workspace/RUTA_CLARIFY/
我正在尝试加载类型系统定义文件:./workspace/UIMA_NLP/descriptors/type_system/nlpTypes.xml UIMA 项目到 Ruta 脚本中。
如果我将类型系统定义复制到 Ruta 项目到 ./workspace/RUTA_CLARIFY/descriptor/nlpTypes.xml 中,我就能成功完成此操作并使用以下内容将其加载到 Ruta 脚本中:
TYPESYSTEM nlpTypes;
但是,当尝试直接从 UIMA_NLP 项目导入时,我在编辑器中得到 'error nlpTypes not found'。我尝试将类型系统描述符的完全限定目录添加到生成的 ruta 引擎中的 descriptorPaths 字段,但没有成功。
在将路径添加到描述符路径后,我在脚本中尝试了以下类型的系统导入:
TYPESYSTEM type_system.nlpTypes;
TYPESYSTEM descriptors.type_system.nlpTypes;
TYPESYSTEM UIMA_NLP.descriptors.type_system.nlpTypes;
奇怪的是,我可以在 Ruta 脚本使用导入类型和按位置导入以及导入定义的类型生成的类型系统中添加 nlpTypes.xml 类型系统描述符 nlpTypes.xml 出现在类型中。我还可以在使用自动完成时在编辑器中输入它们,然后会出现类型。但是,即使在使用自动完成来完成类型名称之后,我仍然会在编辑器中收到 'Type "typename" is not defined in this script/block' 的错误。因此,我怀疑我在这种情况下没有正确使用 TYPESYSTEM 导入。
我是否错误地使用了 TYPESYSTEM 导入?还是只能使用我预定义的类型系统描述符将其复制到 Ruta 项目中?
将类型系统文件夹的绝对路径添加到分析引擎描述符的 descriptiorPaths
配置参数中应该可以。但是,您在哪个 xml 描述符中添加了它?如果它是你的脚本生成的描述符,那么修改将被workbench覆盖。您需要将附加路径添加到项目的模板描述符 BasicEngine.xml
。
如果 descriptorPath 包含其他项目的描述符文件夹的路径,则正确的导入将显示为:TYPESYSTEM type_system.nlpTypes;
一般情况下,你会从Ruta项目中引用UIMA项目:Right-click在Ruta项目->Properties->Project References->勾选UIMA项目
当 workbench 构建分析引擎描述符时,引用项目的默认文件夹会自动包含在 descriptorPaths 中。对于 UIMA Pear 项目,这将是 desc
文件夹。对于 Java 项目,这将是输出文件夹,例如 bin 或 target/classes.
你报的奇怪错误真是奇怪。听起来像是项目设置或描述符的问题,不是 up-to-date。尝试清理项目:菜单->项目->清理...
由于项目设置,错误可能是误报。您可以启动脚本并在输出文件夹中获取结果吗?
我个人建议仅使用简单的 Ruta 项目来制作原型。对于严肃的规则项目,特别是如果对其他项目有依赖性,我宁愿推荐一个 maven-built 项目。为了简化设置,还有一个用于 ruta 项目的原型。
免责声明:我是 UIMA Ruta 的开发者