草庐IT

getResourceAsStream

全部标签

java - 理解 Thread.currentThread().getContextClassLoader().getResourceAsStream()

我正在查看代码示例,但不确定这意味着什么。Thread.currentThread().getContextClassLoader().getResourceAsStream("MyProperty.properties");它似乎想要读取属性文件,但我不确定MyProperty.properties的位置。感谢您的帮助,谢谢。 最佳答案 ItappearsthatitlookingtoreadapropertyfilebutIamnotsurewhereMyProperty.propertiesislocated.正如您当前拥有的

java - getResourceAsStream() 可以找到jar 文件之外的文件吗?

我正在开发一个使用加载配置文件的库的应用程序:InputStreamin=getClass().getResourceAsStream(resource);然后我的应用程序打包在一个.jar文件中。如果resource在.jar文件中,我可以将路径指定为"/relative/path/to/resource/resource"。我想知道是否可以找到位于.jar文件之外的资源,在这种情况下,我将如何指定路径。(假设我的应用程序的jar在app/中,资源在app/config中)。该程序使用第3rd方库。库使用资源作为配置文件。我还想调整配置文件,而不必一直解压/压缩jar文件。

java - 为什么 getResourceAsStream 方法在 Class 类中?

为什么publicInputStreamgetResourceAsStream(Stringname)在Class类中?它只是提供jar文件中的文件输入流,与Class类无关。所以它可以是静态方法,它可以在任何类中。 最佳答案 有类的关系:该类的包被考虑在内-如果您在类上为foo.bar.SomeClass调用getResourceAsStream("baz.txt")它将寻找/foo/bar/baz.txt首先考虑类加载器来查找资源——如果它是静态方法,它如何知道要查找哪些jar文件(等)?生活不仅仅是系统类加载器

java - 为什么 getResourceAsStream() 在 IDE 中有效,但在 JAR 中无效?

我只想将一个文件读入我的程序。该文件位于“../f.fsh”工作目录上方的一个目录中。所以当我在IDE中运行时,下面的代码可以正确运行Stringname="../f.fsh";InputStreamis=getClass().getResourceAsStream(name);InputStreamReaderisreader=newInputStreamReader(is);//CRASHESHEREWITHNULLPOINTEREXCEPTIONBufferedReaderbr=newBufferedReader(isreader);但是当我创建一个内部压缩了f.fsh的JAR文

java - 为什么 Jenkins 无法加载资源?

这是我的项目布局:src/test/resources/ares/file1.xmlfile2.xml这是Jenkins工作区的布局:my-module/target/test-classes/ares/file1.xmlfile2.xml在eclipse下,测试运行没有任何错误。在Jenkins上,测试只是失败了。Jenkins无法定位资源。以下是测试执行的一些输出:eclipseMyClass.class.getResourceAsStream(/ares/file1.xml)=>java.io.BufferedInputStream@4f4b2f1aMyClass.class.g

java - 为什么在尝试读取文件时会出现 NullPointerException?

我使用此测试将txt转换为pdf:packageconvert.pdf;//getResourceAsStream(Stringname):Returnsaninputstreamforreadingthespecifiedresource.//toByteArray:GetthecontentsofanInputStreamasabyte[].importjava.io.FileOutputStream;importjava.io.IOException;importorg.apache.commons.io.IOUtils;importconvert.pdf.txt.TextCon

java - 在 Eclipse 中调试 Java 时如何使 getResourceAsStream 工作?

这真是令人难以置信……当我在包含文本文件的打包JAR文件上运行Java时,我可以使getResource()和getResourceAsStream()正常工作。(有关引用,请参阅accessingresources上的Sun文档)当我在Eclipse中运行同一个程序时,我似乎无法使它正常工作,即使我已将我的文本文件放在与编译的.class相同的树中文件你们中的任何一位能否指出任何细微之处以确保getResource()和getResourceAsStream()函数正常工作?我有一种预感,它与CLASSPATH和/或Eclipse放置它自动编译的.class文件的位置有关。(我注意到

java - 如何从我的 WAR 中的类目录中读取文件?

我需要从JavaWAR应用程序的类路径中读取文本文件。我怎样才能将它读作InputStream。文件位于/WEB-INF/classes/文件夹中,但是当我使用以下代码时,它只返回null。InputStreaminput=servletContext.getClass().getClassLoader().getResourceAsStream("my_filename.txt"); 最佳答案 用正斜杠作为前缀以表示类路径的根:getResourceAsStream("/my_filename.txt")或者,您可以使用serlv

java - getResourceAsStream 在 Java 10 中返回 null

我有一个使用Java1.8.0162的应用程序,我正在将它升级到Java10。我遇到的问题之一是appProperties.getClass().getResourceAsStream("/application.properties")开始在Java10中返回null。有什么想法吗?appProperties定义如下:appProperties=newProperties();这发生在静态方法中,以防相关。该文件存在于src/main/resources/application.properties中。无论我是从IntelliJ还是从Maven生成的jar运行,都会发生这种情况。我尝

Java:在 war 中访问属性文件

我已经在StackOverflow上搜索了“propertiesinsidewar”,但没有一个结果适合我的情况。我正在使用EclipseGalileo和GlassFishv3开发一组Web服务。我正在使用具有以下结构的“动态网络项目”Src-java_code_pkg_1-java_code_pkg_2-com.company.config--configfile.propertiesWebContent-META-INF-WEB-INF--log4jProperties--web.xml--applicationContext.xml--app-servlet.xml我想访问“ja