jcifs.smb.SmbException: Failed to connect: 0.0.0.000/IP 解决方案

2024-08-28 21:38

本文主要是介绍jcifs.smb.SmbException: Failed to connect: 0.0.0.000/IP 解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

因为业务原因,现在内网系统使用共享文件夹方式进行文件的输入输出,Java开发,使用的Jar包为jcifs,在本地测试完全正常,部署到正式环境后出现:

jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/IP的异常,解决方式如下:

分析原因

查询jcifs的网站(http://www.jcifs.org/)

上述部分明确提到了,jsifs仅支持SMB1,而不支持SMB2/SMB3,所以先从服务器支持协议入手

服务器为windows服务器,在服务器上打开powershell控制台(在开始->运行->输入 powershell即可)

获取 SMB1和SMB2 服务器协议配置的当前状态,输入:

Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol

输出为:

可以看出当前服务器SMB1未开启,尝试开启SMB1,

在powershell控制台输入:

Set-SmbServerConfiguration -EnableSMB1Protocol $true

报错,指定服务不存在,所以当前的服务器不支持SMB1,到此,原因找到了,因为本地使用的机器支持SMB1所以可以正常运行jcifs的功能,但是正式环境的服务器不支持SMB1,所以报错

解决问题

当前解决思路为替换jar包(如果有更好的方式,欢迎私信)

jcifs的网站上提供了两种支持SMB2/SMB3的方式

当前解决时选用的方式为smbj(github地址:https://github.com/hierynomus/smbj)

第一步: 下载jar包,可以去https://mvnrepository.com/search下载(只能下载smbj.jar包,在实际运行时还需要导入一些辅助jar包,具体参照github上的gradle.properties),也可以去我上传的资源:https://download.csdn.net/download/u013092293/10766117进行下载(内附所需的jar包和一个demo)

第二步: 参照github官方的文档进行编写代码,链接共享文件夹

实测成功

到此,问题解决,如按上述流程有任何问题,欢迎私信

补充:

有朋友私信给我可以开启SMB1,现在进行补充功能,操作如下:

如果不想换jar包的朋友可以试试该方式

 

这篇关于jcifs.smb.SmbException: Failed to connect: 0.0.0.000/IP 解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1115954

相关文章

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

Java下载文件中文文件名乱码的解决方案(文件名包含很多%)

《Java下载文件中文文件名乱码的解决方案(文件名包含很多%)》Java下载文件时,文件名中文乱码问题通常是由于编码不正确导致的,使用`URLEncoder.encode(filepath,UTF-8... 目录Java下载文件中文文件名乱码问题一般情况下,大家都是这样为了解决这个问题最终解决总结Java下

Idea实现接口的方法上无法添加@Override注解的解决方案

《Idea实现接口的方法上无法添加@Override注解的解决方案》文章介绍了在IDEA中实现接口方法时无法添加@Override注解的问题及其解决方法,主要步骤包括更改项目结构中的Languagel... 目录Idea实现接China编程口的方法上无法添加@javascriptOverride注解错误原因解决方

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

C++实现获取本机MAC地址与IP地址

《C++实现获取本机MAC地址与IP地址》这篇文章主要为大家详细介绍了C++实现获取本机MAC地址与IP地址的两种方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实际工作中,项目上常常需要获取本机的IP地址和MAC地址,在此使用两种方案获取1.MFC中获取IP和MAC地址获取

MYSQL事务死锁问题排查及解决方案

《MYSQL事务死锁问题排查及解决方案》:本文主要介绍Java服务报错日志的情况,并通过一系列排查和优化措施,最终发现并解决了服务假死的问题,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录问题现象推测 1 - 客户端无错误重试配置推测 2 - 客户端超时时间过短推测 3 - mysql 版本问