我的目标是提供一个 < code> AbstrictimportClass , 以及一个特定的maven 模块中要导入的文件。 并在其他模块中使用此模块扩展此类 。
s让我们说ModuleA
包含 src/main/java/MyAbstripimportClass.java
和src/main/resources/Myimport.csv
。
I now want to use the abstract import class in ModuleB
. Or rather, I will extend it, use the abstract-fileimport, and a few custom functions.
Then ModuleC
also uses the abstracts import and some custom functions.
问题是: 抽象类中的导入与 reader
和 InputStream
一起进行。 当我只执行模块A时, 一切都很好 。
但当我试图通过 Maven pom 将模块包含在内, 然后扩展模块以拨号导入时, 我得到 < code> NullPointerException , 在使用阅读器的行上 。
很明显,我不能这样使用外国模块资源。
但是,我怎样才能利用这个机会呢?
更新 :
模块A:
src/main/java/path/to/MyClassA.java
src/main/resources/path/to/test.txt
abstract class MyClassA {
public static String TESTFILE = test.txt;
List<String> doImport(String filename) {
InputStream fileStream = resourceClass.getResourceAsStream(filename);
//some precessing
return list;
}
}
B单元:
src/main/java/path/to/MyClassB.java
class MyClassB implements MyClassA {
List<String> list = doImport(TESTFILE);
}
If I put MyClassB in same dir as A, then everything works fine. If I build B in a own module I get NullPointer for InputStream, what means the file is not found.