使用groovy加载文件时出现问题。我在项目的testdata中有一个sample.txt
文件和一个pdf(fonts.pdf
)文件。它们位于相同的路径中。
当我使用下面的代码获取txt文件时,我没有得到NullPointerException
但是当我使用相同的代码获取pdf文件时,我得到NullPointerException
。
def String inputFile = 'fonts.pdf'
GroovyClassLoader classLoader = new GroovyClassLoader()
return new File(classLoader.getResource(inputFile).path)
答案 0 :(得分:0)
您是否使用包名称的脚本?以下工作没有任何问题。
def String inputFile = 'fonts.pdf'
GroovyClassLoader classLoader = new GroovyClassLoader()
print classLoader.getResource(inputFile );
return new File ( classLoader.getResource(inputFile ).toURI() )
如果我使用包,那么文件名需要具有匹配的包名,并且应该位于适当的运行时位置
def String inputFile = 'apackage/fonts.pdf'
GroovyClassLoader classLoader = new GroovyClassLoader()
print classLoader.getResource(inputFile );
return new File ( classLoader.getResource(inputFile ).toURI() )
在任何情况下,如果文件是文本或pdf
,我都没有看到差异