Java 加载属性文件时出错
加载属性文件时出错。 我得到以下错误: java.io.FileNotFoundException:neosEntitelment.properties(系统无法Java 加载属性文件时出错,java,properties,property-files,Java,Properties,Property Files,加载属性文件时出错。 我得到以下错误: java.io.FileNotFoundException:neosEntitelment.properties(系统无法 find the file specified) at java.io.FileInputStream.open0(FileInputStream.java) at java.io.FileInputStream.open(FileInputStream.java:195) at jav
find the file specified)
at java.io.FileInputStream.open0(FileInputStream.java)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.<init>(FileInputStream.java:138)
at java.io.FileInputStream.<init>(FileInputStream.java:93)
at noes.Entitelment.CreateProperties.<init>(CreateProperties.java:45)
at noes.Entitelment.NeosDatabase.oracleJdbcConnection(NeosDatabase.java:68)
at noes.Entitelment.NeosDatabase.getDataByDB(NeosDatabase.java:20)
at noes.Entitelment.SoapWebService.getEntitelmentDetails(SoapWebService.java:254)
at noes.Entitelment.Entitelment.doGet(Entitelment.java:27)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)
at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:110)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
这是我的密码
Properties prop = new Properties();
prop.load(new FileInputStream("neosEntitelment.properties"));
setNeoJdbcConnectionUrl(prop.getProperty("neo.jdbc.connection.url"));
setNeoUserName(prop.getProperty("neo.db.userName"));
setNeoPassword(prop.getProperty("neo.db.password"));
将文件“neosEntitelment.properties”放在“src”目录中。我建议您使用“getClass.getResourceAsStream('/neosEntitelment.properties')”您是在eclipse或任何其他IDE中运行此文件还是通过命令行运行此文件?请尝试将其放在引号中。
prop.load(新文件输入流(“neosEntitelment.properties”));
@Anacron-是的,我正在用Java1在Eclipse上运行这个。8@kism3t-已尝试但未运行,相同的错误文件名拼写是否正确?neosEntitelment.properties-是否应为“neosEntitlement.properties”?请在文件名和java代码中进行验证:)将文件“neosEntitelment.properties”放入“src”无法获得解决方案目录感谢您的帮助,我刚刚使用了------prop.load(newfileinputstream(newfile(getClass().getResource(“/neosEntitelment.properties”).toURI());------我的问题得到了解决。你能不能建议,当我把它做成jar并把属性文件放在项目之外时,它也会起作用???为什么要创建一个新文件和一个FileInputStream?getResourceAsStream()已返回一个流。此外,是的,一旦打包到jar中,它就可以工作,只要在编译.Alvin时包含该文件——我想将该属性文件放在我的项目之外,这样我就可以在需要时轻松地进行更改。那么在这种情况下,我要做什么改变。。。
Properties prop = new Properties();
prop.load(new FileInputStream("neosEntitelment.properties"));
setNeoJdbcConnectionUrl(prop.getProperty("neo.jdbc.connection.url"));
setNeoUserName(prop.getProperty("neo.db.userName"));
setNeoPassword(prop.getProperty("neo.db.password"));