使用win10内置的linux子系统启动jfinal项目失败,启动失败的日志如下

使用win10内置的linux子系统启动jfinal项目失败,启动失败的日志如下

执行的启动命令是

/usr/java/jdk1.8.0_211/bin/java -Xverify:none -cp ./boot/*:./lib/*:./config:./static com.uairobot.bill.jfinal.Application

启动失败的日志是

Starting JFinal 4.2 -> http://0.0.0.0:11029
Info: jfinal-undertow 1.6, undertow 2.0.19.Final, jvm 1.8.0_211
java.lang.IllegalStateException: port: 11029 not available!

	at com.jfinal.server.undertow.UndertowServer.doStart(UndertowServer.java:255)
	at com.jfinal.server.undertow.UndertowServer.start(UndertowServer.java:159)
	at com.uairobot.bill.jfinal.Application.main(Application.java:19)

第一看到这个日志,我想是不是端口太高造成了,于是我修改端口为8080,再次启动还是出现这个日志

Starting JFinal 4.2 -> http://0.0.0.0:8080
Info: jfinal-undertow 1.6, undertow 2.0.19.Final, jvm 1.8.0_211
java.lang.IllegalStateException: port: 8080 not available!

	at com.jfinal.server.undertow.UndertowServer.doStart(UndertowServer.java:255)
	at com.jfinal.server.undertow.UndertowServer.start(UndertowServer.java:159)
	at com.uairobot.bill.jfinal.Application.main(Application.java:19)

我想是不是8080端口不能使用,我之前使用8761启动过一个spring-boot的项目,现在这个项目已经关闭了,我修改成8761启动项目

启动依然失败

Starting JFinal 4.2 -> http://0.0.0.0:8761
Info: jfinal-undertow 1.6, undertow 2.0.19.Final, jvm 1.8.0_211
java.lang.IllegalStateException: port: 8761 not available!

	at com.jfinal.server.undertow.UndertowServer.doStart(UndertowServer.java:255)
	at com.jfinal.server.undertow.UndertowServer.start(UndertowServer.java:159)
	at com.uairobot.bill.jfinal.Application.main(Application.java:19)


搭建环境参考文章

https://segmentfault.com/a/1190000023060073


评论区

JFinal

2020-07-01 10:03

其实错误原因就是字面上的端口无法使用,确保被使用的端口可以使用

至于为啥端口无法使用肯定就与 jfinal 无关了,可能是没有权限

JFinal

2020-07-01 12:36

你可以写一个简单的程序,通过 ServerSocket 打开上述不能用的端口,立即就能验证是端口不能用了