2016-09-13 67 views
1

我是Nutch的初学者。我已经完成了抓取,根据不同的教程创建了一个定制插件。对于特定的任务,我的Java类必须使用名为sample.properties的属性文件来完成某些任务。我在下面的代码中得到了NullPointerException在Nutch中添加自定义插件的属性文件

Properties property = new Properties(); 
     InputStream input = getClass().getResourceAsStream("sample.properties"); 
     property.load(input); 

我不知道把这个属性文件放在哪里,因为它在用ant编译后没有移动到编译的jar文件中。目前我正在放置在java类的同一目录中。任何帮助将不胜感激。

<copy todir="${build.classes}"> 
    <fileset dir="${src.dir}" includes="**/*.properties"/> 
</copy> 

它复制属性文件编译罐子,问题得到了解决:

+0

我想那一定是在我加入有太多的资源文件夹 – imoteb

+0

。但是在使用ant进行编译之后,它不在plugin.jar中,我得到这个Exception。 – Abhishek

+0

你应该有一个构建你的jar的ant目标(使用'jar'ant任务)。我认为你必须在jar任务中使用文件集明确地包含你的资源。 –

回答

1

我只是通过添加插件的build.xml作为副本任务得到解决。干杯!

编辑:

我只是用另一种方法也。移动属性文件conf目录并获得输入Parsefilter,

Properties property = new Properties(); 
InputStream input = ClassLoader.getSystemResourceAsStream("sample.properties"); 
property.load(input);