閱讀120 返回首頁    go 技術社區[雲棲]


Eclipse Jetty JettyLauncher 問題解決與使用技巧

https://yulimin.javaeye.com/blog/27418

Eclipse Jetty JettyLauncher java.net.SocketException: Unrecognized Windows Sockets error: 10106: create

剛開始還好好的,突然間出然這個錯誤,於啟動不了了。
XP SP2、Eclipse 3.1.2、Jetty-5.1.11RC0、JettyLauncher 1.3.0
XP SP2、Eclipse 3.2.0、Jetty-5.1.11RC0、JettyLauncher 1.4.1
都不行。
穀歌與擺渡後,看到應當與此無關,而是與網絡協議有關的問題,但是沒有看到方便的解決辦法,怪事,難道真的得重裝係統?

launching Jetty webapp: /xxx on address: 127.0.0.1:8088 using dir: [F:/JavaProject/xxx]
10:27:28.640 INFO   [main] org.mortbay.log.LogImpl.add(LogImpl.java:109) >16> added org.mortbay.log.OutputStreamLogSink@120a47e
10:27:28.625 INFO   [main] org.mortbay.log.LogImpl.reset(LogImpl.java:228) >11> reset
10:27:28.640 INFO   [main] org.mortbay.log.LogImpl.add(LogImpl.java:109) >11> added org.mortbay.log.OutputStreamLogSink@789144
org.mortbay.util.MultiException[java.net.SocketException: Unrecognized Windows Sockets error: 10106: create]
        at org.mortbay.http.HttpServer.doStart(HttpServer.java:686)
        at org.mortbay.util.Container.start(Container.java:72)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:282)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:104)
        at com.iw.plugins.jettyrunner.PluginRunner.main(PluginRunner.java:75)
java.net.SocketException: Unrecognized Windows Sockets error: 10106: create
        at java.net.ServerSocket.createImpl(ServerSocket.java:254)
        at java.net.ServerSocket.getImpl(ServerSocket.java:205)
        at java.net.ServerSocket.bind(ServerSocket.java:318)
        at java.net.ServerSocket.(ServerSocket.java:185)
        at org.mortbay.util.ThreadedServer.newServerSocket(ThreadedServer.java:391)
        at org.mortbay.util.ThreadedServer.open(ThreadedServer.java:477)
        at org.mortbay.util.ThreadedServer.start(ThreadedServer.java:503)
        at org.mortbay.http.SocketListener.start(SocketListener.java:204)
        at org.mortbay.http.HttpServer.doStart(HttpServer.java:716)
        at org.mortbay.util.Container.start(Container.java:72)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:282)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:104)
        at com.iw.plugins.jettyrunner.PluginRunner.main(PluginRunner.java:75)
java.net.SocketException: Unrecognized Windows Sockets error: 10106: create
        at java.net.ServerSocket.createImpl(ServerSocket.java:254)
        at java.net.ServerSocket.getImpl(ServerSocket.java:205)
        at java.net.ServerSocket.bind(ServerSocket.java:318)
        at java.net.ServerSocket.(ServerSocket.java:185)
        at org.mortbay.util.ThreadedServer.newServerSocket(ThreadedServer.java:391)
        at org.mortbay.util.ThreadedServer.open(ThreadedServer.java:477)
        at org.mortbay.util.ThreadedServer.start(ThreadedServer.java:503)
        at org.mortbay.http.SocketListener.start(SocketListener.java:204)
        at org.mortbay.http.HttpServer.doStart(HttpServer.java:716)
        at org.mortbay.util.Container.start(Container.java:72)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:282)
        at com.iw.plugins.jettyrunner.PluginRunner.launch(PluginRunner.java:104)
        at com.iw.plugins.jettyrunner.PluginRunner.main(PluginRunner.java:75)

問題解決:
Run ==> Run ... ==> Jetty Web ==> Environment
由於我在這裏新增加了一個變量,下麵默認是
Append environment to native environment,選擇這個就可以正常啟動的
但是我選擇下麵的
Replace native environment with specified environment,於是,啟動就報錯。改選上麵的就OK了。

其它問題及技巧:
1、如果JSP出現無法編譯:Unable to find a javac compiler時,記得把JDK裏的tools.jar加進JRE裏去。
即:%JAVA_HOME%/jre/lib/ext/目錄下去即可;

2、Jetty、JettyLauncher的配置與使用看自帶的文檔;

3、網上一些技術文章:
Jetty的配置
https://forum.javaeye.com/viewtopic.php?t=1630
在 Jetty 中用 jikes 替代 tools.jar 來編譯 JSP 文件
https://forum.javaeye.com/viewtopic.php?t=12907
Java的一些開發工具
https://forum.javaeye.com/viewtopic.php?t=18624

 

最後更新:2017-04-02 00:06:17

  上一篇:go VC常用技術新編
  下一篇:go 關於對象數據庫 DB4O 的一些BUG以及如何應對的方法