java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind 处理方法

简介: 今天部署项目过程中tomcat报如下异常: [html] view plaincopyprint? java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind        at java.
今天部署项目过程中tomcat报如下异常:
  1. java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind 
  2.  
  3.     at java.net.PlainSocketImpl.socketBind(Native Method) 
  4.  
  5.     at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) 
  6.  
  7.     at java.net.ServerSocket.bind(ServerSocket.java:319) 
  8.  
  9.     at java.net.ServerSocket.<init>(ServerSocket.java:185) 
  10.  
  11.     at java.net.ServerSocket.<init>(ServerSocket.java:141) 
  12.  
  13.     at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:50) 
  14.  
  15.     at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:494) 
  16.  
  17.     at org.apache.tomcat.util.net.JIoEndpoint.start(JIoEndpoint.java:513) 
  18.  
  19.     at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:202) 
  20.  
  21.     at org.apache.catalina.connector.Connector.start(Connector.java:1132) 
  22.  
  23.     at org.apache.catalina.core.StandardService.start(StandardService.java:457) 
  24.  
  25.     at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) 
  26.  
  27.     at org.apache.catalina.startup.Catalina.start(Catalina.java:552) 
  28.  
  29.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
  30.  
  31.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
  32.  
  33.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
  34.  
  35.     at java.lang.reflect.Method.invoke(Method.java:597) 
  36.  
  37.     at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) 
  38.  
  39.     at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) 
  40.  
  41. 2012-11-27 17:13:51 org.apache.catalina.startup.Catalinastart 

         Google下发现原来是端口被占用。对于这个异常其实很容易解决,不外乎两种解决方法:

             1、更改tomcat端口

                2、  关掉占用该端口的进程。

         一、更改tomcat端口

          首先到安装目录(或者解压目录)下找到conf文件夹,在里面找到server.xml的文件,找到

  1. <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
  2. enableLookups="false" redirectPort="8443" acceptCount="100" 
  3. debug="0" connectionTimeout="20000"  
  4. disableUploadTimeout="true" /> 

         将port="8080"改为其它的就可以了

          二、关闭占用该端口的进程

        1、首先进入命令行查看端口是否被占用

         使用命令: netstat –ano。如下:

         我的服务器端口是:8080。从上面可以看出8080端口已经被PID5268的进程占用。

              2、查看该PID5268的进程

         使用命令:tasklist|findstr "5268"。如下

         从上面看出PID5268的进程为javaw.exe

         第一种解决办法是:把javaw.exe进程关掉

         第二种解决办法是:直接通过任务管理器查看PID5268的进程,然后关掉windows任务管理器->查看->选择列选中PID然后查看任务管理器,关掉PID5268的进程。

相关文章
|
10月前
|
运维 安全 网络安全
Windows Server 2019拨号“找不到设备”?Error 1058解决指南
Windows Server 2019拨号报错1058?别急!这不是硬件故障,而是关键服务被禁用。通过“服务依存关系”排查,依次启动“安全套接字隧道协议”“远程接入连接管理”和“路由与远程访问”服务,仅需4步即可恢复PPPoE或VPN拨号功能,轻松解决网络中断问题。
692 1
|
监控 Java Unix
6个Java 工具,轻松分析定位 JVM 问题 !
本文介绍了如何使用 JDK 自带工具查看和分析 JVM 的运行情况。通过编写一段测试代码(启动 10 个死循环线程,分配大量内存),结合常用工具如 `jps`、`jinfo`、`jstat`、`jstack`、`jvisualvm` 和 `jcmd` 等,详细展示了 JVM 参数配置、内存使用、线程状态及 GC 情况的监控方法。同时指出了一些常见问题,例如参数设置错误导致的内存异常,并通过实例说明了如何排查和解决。最后附上了官方文档链接,方便进一步学习。
3257 4
|
监控 算法 Java
Java虚拟机(JVM)垃圾回收机制深度剖析与优化策略####
本文作为一篇技术性文章,深入探讨了Java虚拟机(JVM)中垃圾回收的工作原理,详细分析了标记-清除、复制算法、标记-压缩及分代收集等主流垃圾回收算法的特点和适用场景。通过实际案例,展示了不同GC(Garbage Collector)算法在应用中的表现差异,并针对大型应用提出了一系列优化策略,包括选择合适的GC算法、调整堆内存大小、并行与并发GC调优等,旨在帮助开发者更好地理解和优化Java应用的性能。 ####
463 27
|
监控 算法 Java
Java虚拟机(JVM)的垃圾回收机制深度解析####
本文深入探讨了Java虚拟机(JVM)的垃圾回收机制,旨在揭示其背后的工作原理与优化策略。我们将从垃圾回收的基本概念入手,逐步剖析标记-清除、复制算法、标记-整理等主流垃圾回收算法的原理与实现细节。通过对比不同算法的优缺点及适用场景,为开发者提供优化Java应用性能与内存管理的实践指南。 ####
|
11月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
721 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
Java程序员必学:JVM架构完全解读
Java 虚拟机(JVM)是 Java 编程的核心,深入理解其架构对开发者意义重大。本文详细解读 JVM 架构,涵盖类加载器子系统、运行时数据区等核心组件,剖析类加载机制,包括加载阶段、双亲委派模型等内容。阐述内存管理原理,介绍垃圾回收算法与常见回收器,并结合案例讲解调优策略。还分享 JVM 性能瓶颈识别与调优方法,分析 Java 语言特性对性能的影响,给出数据结构选择、I/O 操作及并发同步处理的优化技巧,同时探讨 JVM 安全模型与错误处理机制,助力开发者提升编程能力与程序性能。
Java程序员必学:JVM架构完全解读
|
12月前
|
Java Shell Maven
【Azure Container App】构建Java应用镜像时候遇无法编译错误:ERROR [build 10/10] RUN ./mvnw.cmd dependency:go-offline -B -Dproduction package
在部署Java应用到Azure Container App时,构建镜像过程中出现错误:“./mvnw.cmd: No such file or directory”。尽管项目根目录包含mvnw和mvnw.cmd文件,但依然报错。问题出现在Dockerfile构建阶段执行`./mvnw dependency:go-offline`命令时,系统提示找不到可执行文件。经过排查,确认是mvnw文件内容异常所致。最终通过重新生成mvnw文件解决该问题,镜像成功构建。
674 1
|
12月前
|
存储 运维 Kubernetes
Java启动参数JVM_OPTS="-Xms512m -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError"
本文介绍了Java虚拟机(JVM)常用启动参数配置,包括设置初始堆内存(-Xms512m)、最大堆内存(-Xmx1024m)及内存溢出时生成堆转储文件(-XX:+HeapDumpOnOutOfMemoryError),用于性能调优与故障排查。
1264 0
Java 中 Exception 和 Error 的区别
在 Java 中,`Exception` 和 `Error` 都是 `Throwable` 的子类,用于表示程序运行时的异常情况。`Exception` 表示可被捕获和处理的异常,分为受检异常(Checked)和非受检异常(Unchecked),通常用于程序级别的错误处理。而 `Error` 表示严重的系统级问题,如内存不足或 JVM 错误,一般不建议捕获和处理。编写程序时应重点关注 `Exception` 的处理,确保程序稳定性。
397 0
|
开发框架 安全 .NET
【Azure Developer】.NET Aspire 项目本地调试遇 Grpc.Core.RpcException 异常( Error starting gRPC call ... )
Error starting gRPC call. HttpRequestException: The SSL connection could not be established, see inner exception. AuthenticationException: The remote certificate is invalid because of errors in the certificate chain: UntrustedRoot
543 12