version.properties 找不到文件 IBM watson bot sdk
version.properties file could not be found IBM watson bot sdk
我正在开发一个使用 IBM Watson 对话的聊天机器人。当我构建项目和 运行 时,它在 RequestUtils.java
class 中的 inputStream
中给出空值 java-sdk/conversation。但是当我从 ide 运行 它工作时。
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("version.properties");
我注意到属性文件没有插入ide jar。如何在构建时将此属性文件添加到 jar 中?可能的原因是什么?任何帮助表示赞赏。
谢谢。
P.S:class的架构如下
parent
project1
project2
Maven Dependencies
|-conversation-3.5.3.jar
| |-package1
| |-packeage2
| |-META-INF
|-core-3.5.3.jar
|-package1
|-packeage2
| |-RequestUtils.class
|-META-INF
|-version.properties
我自己修好了。
该线程将从其父线程继承其上下文类加载器。如果您在整个应用程序中什么都不做,那么所有线程最终都会以系统类加载器作为它们的上下文类加载器。
因此,我自己为当前线程设置了 contextClassLoader,如下所示。
ClassLoader classLoader = MyClass.class.getClassLoader();
Thread.currentThread().setContextClassLoader( classLoader );
现在可以正常使用了。
我正在开发一个使用 IBM Watson 对话的聊天机器人。当我构建项目和 运行 时,它在 RequestUtils.java
class 中的 inputStream
中给出空值 java-sdk/conversation。但是当我从 ide 运行 它工作时。
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("version.properties");
我注意到属性文件没有插入ide jar。如何在构建时将此属性文件添加到 jar 中?可能的原因是什么?任何帮助表示赞赏。 谢谢。
P.S:class的架构如下
parent
project1
project2
Maven Dependencies
|-conversation-3.5.3.jar
| |-package1
| |-packeage2
| |-META-INF
|-core-3.5.3.jar
|-package1
|-packeage2
| |-RequestUtils.class
|-META-INF
|-version.properties
我自己修好了。 该线程将从其父线程继承其上下文类加载器。如果您在整个应用程序中什么都不做,那么所有线程最终都会以系统类加载器作为它们的上下文类加载器。 因此,我自己为当前线程设置了 contextClassLoader,如下所示。
ClassLoader classLoader = MyClass.class.getClassLoader();
Thread.currentThread().setContextClassLoader( classLoader );
现在可以正常使用了。