Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Vaadin Spring引导找不到npm包_Java_Spring Boot_Npm_Vaadin - Fatal编程技术网

Java Vaadin Spring引导找不到npm包

Java Vaadin Spring引导找不到npm包,java,spring-boot,npm,vaadin,Java,Spring Boot,Npm,Vaadin,我有一个现有的Spring Boot应用程序,我希望在其中添加一个Vaadin前端 我有一个简单的视图类,如下所示: @Route(value = "admin") public class MainView extends VerticalLayout { private TextField field = new TextField("Message"); private Button button = new Button("Click Me"); @PostC

我有一个现有的Spring Boot应用程序,我希望在其中添加一个Vaadin前端

我有一个简单的视图类,如下所示:

@Route(value = "admin")
public class MainView extends VerticalLayout {

    private TextField field = new TextField("Message");
    private Button button = new Button("Click Me");

    @PostConstruct
    public void init() {
        button.addClickListener(e -> Notification.show("Message: " + field.getValue()));
    }
}
我已通过将
.anyRequsts().permitAll()
添加到我的
SecurityConfig

当我运行应用程序并在Chrome中导航到
/admin
时,我会在页面的预期位置显示以下错误:

Webpack Error

ERROR in ../target/frontend/generated-flow-imports.js
Module not found: Error: Can't resolve '@vaadin/vaadin-button/src/vaadin-button.js' in 'C:\Users\cameron\IdeaProjects\biometric-access\target\frontend'
 @ ../target/frontend/generated-flow-imports.js 11:0-52
对于不同的包,这会重复几次。我在Spring控制台输出中也得到了类似的错误。它还提供一条消息,告诉我删除
node\u模块
,然后运行
npm安装
,我已经尝试过了

Vaadin文档没有提到这个问题,建议的步骤也不起作用

令人恼火的是,它以前工作正常,我不知道是什么变化使它停止工作。如有任何建议,将不胜感激

编辑


经过一番搜索,我意识到这可能是npm问题,而不是瓦丁问题。npm“常见问题”页面建议运行
npm clean
,然后运行
npm install
,以解决此错误。这解决了我的问题。

从Vaadin 14.0.0更新到14.0.2后,我也遇到了同样的问题。 删除
节点\u模块
文件夹并运行
准备前端
目标是不够的

在打包项目之前删除以下文件和文件夹:

  • 节点单元
  • package-lock.json
  • package.json
  • webpack.config.js
  • webpack.generated.js

在更新pom.xml中的vaadin版本后,最好有一个“干净”的目标来自动完成这项工作

您是否事先运行了
prepare frontend
目标?试过了,但运气不好,找到了一个对我有效的解决方案,所以我会发布它是的,最后npm clean为我做了。如果maven clean目标中包含了这一点,那就太好了。@cameron1024如果您找到了一种不同或更好的方法来解决您的问题,请将其添加为您自己的答案。