linux部署出现java文件操作报错:java.io.FileNotFoundException解决办法

 更新时间:2023年12月09日 14:23:27   作者:流连勿忘返  
这篇文章主要g介绍了linux部署出现java文件操作报错:java.io.FileNotFoundException解决的相关资料,这个错误通常表示你的Spring Boot应用程序无法找到指定的文本文件,需要的朋友可以参考下

1.报错场景:

其中的 ip2region.xdb 文件是放在 resources 文件夹中的,然后在一个工具类里面读取这个文件,在开发环境中的是这样读取的: 

            ClassPathResource resource = new ClassPathResource("ip2region.xdb");
            //获取真实文件路径
            String path = resource.getURL().getPath();
            byte[] cBuff = Searcher.loadContentFromFile(path);

然后部署到linux上后,就出现了错误,报 java.io.FileNotFoundException 

2.解决方法:

            ClassPathResource resource = new ClassPathResource("ip2region.xdb");
            InputStream inputStream = resource.getInputStream();
            byte[] bytes = IOUtils.toByteArray(inputStream);

在部署环境,要使用 InputStream inputStream = resource.getInputStream(); 这个方法

3.用java读取linux系统上的指定文件

File file = new File("/usr/webapps/MP/ip2region.xdb");
            if (file.exists()) {
                System.out.println("文件存在");
            } else {
                System.out.println("文件不存在");
            }
            if (file.isFile()) {
                System.out.println("是一个文件");
            } else {
                System.out.println("不是一个文件");
            }
            if (file.canRead()) {
                System.out.println("可读");
            } else {
                System.out.println("不可读");
            }
            if (file.canWrite()) {
                System.out.println("可写");
            } else {
                System.out.println("不可写");
            }

总结 

到此这篇关于linux部署出现java文件操作报错:java.io.FileNotFoundException解决办法的文章就介绍到这了,更多相关:java.io.FileNotFoundException报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java通过httpclient比较重定向和请求转发

    Java通过httpclient比较重定向和请求转发

    这篇文章主要介绍了Java通过httpclient比较重定向和请求转发,HttpClient 4.x 版本,get请求方法会自动进行重定向,而post请求方法不会自动进行重定向,需要的朋友可以参考下
    2023-04-04
  • 使用Spring特性实现接口多实现类的动态调用方式

    使用Spring特性实现接口多实现类的动态调用方式

    这篇文章主要介绍了使用Spring特性实现接口多实现类的动态调用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • Java防止频繁请求、重复提交的操作代码(后端防抖操作)

    Java防止频繁请求、重复提交的操作代码(后端防抖操作)

    在客户端网络慢或者服务器响应慢时,用户有时是会频繁刷新页面或重复提交表单的,这样是会给服务器造成不小的负担的,同时在添加数据时有可能造成不必要的麻烦,今天通过本文给大家介绍下Java防止频繁请求、重复提交的操作代码,一起看看吧
    2022-04-04
  • 关于Idea创建Java项目并引入lombok包的问题(lombok.jar包免费下载)

    关于Idea创建Java项目并引入lombok包的问题(lombok.jar包免费下载)

    很多朋友遇到当idea创建java项目时,命名安装了lombok插件却不能使用注解,原因有两个大家可以参考下本文,本文对每种原因分析给出了解决方案,需要的朋友参考下吧
    2021-06-06
  • springboot中使用rabbitt的详细方法

    springboot中使用rabbitt的详细方法

    这篇文章主要介绍了springboot中使用rabbitt,通过本文学习让我们了解如何在Spring Boot中使用RabbitMQ,并使用不同的交换机和队列类型以及消息确认模式,需要的朋友可以参考下
    2023-05-05
  • Java sdk安装及配置案例详解

    Java sdk安装及配置案例详解

    这篇文章主要介绍了Java sdk安装及配置案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Java动态代理机制的实例详解

    Java动态代理机制的实例详解

    这篇文章主要介绍了 Java动态代理机制的实例详解的相关资料,希望通过本文大家能够掌握动态代理机制,需要的朋友可以参考下
    2017-09-09
  • Java中的上下文加载器ContextClassLoader详解

    Java中的上下文加载器ContextClassLoader详解

    这篇文章主要介绍了Java中的上下文加载器ContextClassLoader详解,ContextClassLoader是通过Thread.currentThread().getContextClassLoader()返回该线程上下文的ClassLoader,需要的朋友可以参考下
    2023-10-10
  • Spring boot集成Mybatis的方法教程

    Spring boot集成Mybatis的方法教程

    这篇文章主要给大家介绍了Spring boot集成Mybatis的方法教程,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-04-04
  • 浅析java 10中的var关键字用法

    浅析java 10中的var关键字用法

    2018年3月20日,Oracle发布java10。java10为java带来了很多新特性。这篇文章主要介绍了Java 10 var关键字详解和示例教程,需要的朋友可以参考下
    2018-10-10

最新评论