Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何规避;“代码太大”;错误(Java)?_Java_Jena - Fatal编程技术网

如何规避;“代码太大”;错误(Java)?

如何规避;“代码太大”;错误(Java)?,java,jena,Java,Jena,我自动从rdf文件(使用/jena)生成一个java类。该类只包含常量,即形式的语句 public static final Resource foo = m_model.createResource( "http://example.com/foo" ); 生成的java类的大小为930 KB,因此无法编译。有没有办法绕过这个问题?我可以只使用rdf文件的一部分作为输入,但使用整个rdf文件会很方便 有这么多常量,您不可能全部使用它们,因此您不可能真正需要生成该类的所有内容 您遇到的限制是类

我自动从rdf文件(使用/jena)生成一个java类。该类只包含常量,即形式的语句

public static final Resource foo = m_model.createResource( "http://example.com/foo" );

生成的java类的大小为930 KB,因此无法编译。有没有办法绕过这个问题?我可以只使用rdf文件的一部分作为输入,但使用整个rdf文件会很方便

有这么多常量,您不可能全部使用它们,因此您不可能真正需要生成该类的所有内容

您遇到的限制是类文件格式固有的。如果要继续生成类,则别无选择,只能将常量划分为多个类

但我建议您生成程序可以读取的文本文件:

  • 它可以是Properties格式,以便您可以将其加载到Properties对象中

  • 它可以是SQL,这样您就可以将它批量插入到数据库表中

  • 它可以是任何数量的其他格式。。。包括一个RDF序列化


您不能将类分解并生成一组具有逻辑分组的条目子集的类吗?您的词汇表/本体真的那么大吗?有几节课?有多少属性?这是一个用skos建模的同义词表。所以这些都是个人。你是对的,我只需要几个。但编程时通过自动完成访问这些常量非常方便。当rdf文件更改时,新的uri会自动反映在java类中。@EmanResu-Yea-well。。。也许您应该为代码所依赖的RDF文件“条目”生成常量,并放弃自动完成的便利。正如我所说,您遇到的限制是硬连接到文件格式和JVM/编译器工具链中的。@EmanResu-Think。。。生成的文件中注释的数量/大小没有限制。您无法根据注释自动完成,但IDE文本搜索将起作用。