在M1上的MacOS 12 Monterey上,Vaadin/Webpack在开发模式下出错



由于升级到MacOS 12/Monterey,我在尝试以开发模式运行应用程序时遇到错误。

为了验证这个问题,我从start.vaadin.com创建了一个全新的入门应用程序。我使用JDK 11和Vaadin 21,因为这是我的其他项目所使用的。

我正在使用IntelliJ Ultimate开发

当我尝试从IntelliJ中启动我的项目时,就像我以前多次这样做一样,项目开始了,像往常一样开始编译前端,正在编写";前端编译成功";然后失败,并显示以下消息

2021-11-05 08:29:09.589 ERROR 11463 --- [        webpack] c.v.base.devserver.DevModeHandlerImpl    : Error when reading manifest.json from webpack-dev-server
java.net.ConnectException: Connection refused
at java.base/sun.nio.ch.Net.pollConnect(Native Method) ~[na:na]
at java.base/sun.nio.ch.Net.pollConnectNow(Net.java:669) ~[na:na]
at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:542) ~[na:na]
at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597) ~[na:na]
at java.base/java.net.Socket.connect(Socket.java:645) ~[na:na]
at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:177) ~[na:na]
at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:497) ~[na:na]
at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:600) ~[na:na]
at java.base/sun.net.www.http.HttpClient.<init>(HttpClient.java:246) ~[na:na]
at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:351) ~[na:na]
at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:372) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1299) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1232) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1120) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1051) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1653) ~[na:na]
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1577) ~[na:na]
at java.base/java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:527) ~[na:na]
at com.vaadin.base.devserver.DevModeHandlerImpl.readManifestPaths(DevModeHandlerImpl.java:556) ~[vaadin-dev-server-8.0.3.jar:na]
at com.vaadin.base.devserver.DevModeHandlerImpl.processLine(DevModeHandlerImpl.java:492) ~[vaadin-dev-server-8.0.3.jar:na]
at com.vaadin.base.devserver.DevModeHandlerImpl.readLinesLoop(DevModeHandlerImpl.java:457) ~[vaadin-dev-server-8.0.3.jar:na]
at com.vaadin.base.devserver.DevModeHandlerImpl.lambda$logStream$2(DevModeHandlerImpl.java:428) ~[vaadin-dev-server-8.0.3.jar:na]
at java.base/java.lang.Thread.run(Thread.java:831) ~[na:na]

我无法访问该网页。当从命令行以生产模式启动时,一切都很正常。

有人能告诉我这里出了什么问题吗?

如果您使用的是Node 17,那么您遇到了这个问题https://github.com/vaadin/flow/issues/12246解决方案是使用节点16代替

此处相同,但在MacOS Catalina上(不认为这取决于MacOS版本(。我在Eclipse中构建和运行Vaadin-starter应用程序时发现了这个问题,但它没有工作。我不知道Eclipse选择了哪个节点版本。我已经通过nvm alias default 16将16设置为默认值,但没有运气。如果使用命令行,使用nvm等工具,我们可以对节点设置进行细粒度调整。这里是我的结果:

Vaadin:21.0.3节点:16.13.0✅
Vaadin:21.04节点:16.13.10✅
Vaadin:21.0.4节点:17.1.0❌

我的nvm ls结果为:

>nvm ls
->     v16.13.0
v17.1.0
system
default -> 16 (-> v16.13.0)
node -> stable (-> v17.1.0) (default)
stable -> 17.1 (-> v17.1.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/gallium (-> v16.13.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.7 (-> N/A)
lts/fermium -> v14.18.1 (-> N/A)
lts/gallium -> v16.13.0

最新更新