getResourceAsStream() 在 eclipse 中工作正常但在 jar 中失败
getResourceAsStream() works fine in eclipse but fails in jar
我的 (maven)-项目如下所示:
+ scr/main
++ java
+++ myPackage
++++ MyClass.java
++ resources
+++ python
++++ PythonScript.py
我现在尝试将 py 脚本加载到我的 java class 中,如下所示:
String s = File.separator;
ClassLoader cl = myClass.getClass().getClassLoader();
cl.getResourceAsStream(s + "python" + s + "PythonScript.py"));
在 Eclipse 中执行时,效果非常好。
但是,当我尝试在 jar 文件中执行此操作时,我得到的只是 NULL...
我的 jar 文件如下所示:
+ MyJar.jar
++ python
+++ PythonScript.py
windows 中的 File.separator
是 \
,因此在尝试获取 jar 文件中的资源时它不会起作用。使用 "/"
在 eclipse 和 jar 中都有效。
String s = "/"; //File.separator;
ClassLoader cl = myClass.getClass().getClassLoader();
cl.getResourceAsStream("python" + s + "PythonScript.py"));
我的 (maven)-项目如下所示:
+ scr/main
++ java
+++ myPackage
++++ MyClass.java
++ resources
+++ python
++++ PythonScript.py
我现在尝试将 py 脚本加载到我的 java class 中,如下所示:
String s = File.separator;
ClassLoader cl = myClass.getClass().getClassLoader();
cl.getResourceAsStream(s + "python" + s + "PythonScript.py"));
在 Eclipse 中执行时,效果非常好。 但是,当我尝试在 jar 文件中执行此操作时,我得到的只是 NULL...
我的 jar 文件如下所示:
+ MyJar.jar
++ python
+++ PythonScript.py
File.separator
是 \
,因此在尝试获取 jar 文件中的资源时它不会起作用。使用 "/"
在 eclipse 和 jar 中都有效。
String s = "/"; //File.separator;
ClassLoader cl = myClass.getClass().getClassLoader();
cl.getResourceAsStream("python" + s + "PythonScript.py"));