Java 如何将vue dist文件夹部署到GlassFish 5?

Java 如何将vue dist文件夹部署到GlassFish 5?,java,vue.js,jakarta-ee,glassfish,Java,Vue.js,Jakarta Ee,Glassfish,我正试图找到一种在GlassFish 5上部署vue项目的方法。 原因是我有两个项目。在GlassFish上运行的基于java的REST项目。还有一个纯Vue项目,它以前在node.js上运行 由于两台不同的主机,我不得不一次又一次地解决CORS问题,因此我希望将两个项目合并到一台服务器上 如果我在Vue文档()中正确理解了这一点,那么首先我必须使用serve-s dist创建一个dist文件夹 要将此文件夹部署到GlassFish服务器上,我必须如何处理它 目标是我可以继续在我的pure Vu

我正试图找到一种在GlassFish 5上部署vue项目的方法。 原因是我有两个项目。在GlassFish上运行的基于java的REST项目。还有一个纯Vue项目,它以前在node.js上运行

由于两台不同的主机,我不得不一次又一次地解决CORS问题,因此我希望将两个项目合并到一台服务器上

如果我在Vue文档()中正确理解了这一点,那么首先我必须使用serve-s dist创建一个dist文件夹

要将此文件夹部署到GlassFish服务器上,我必须如何处理它

目标是我可以继续在我的pure Vue项目中开发前端,然后从中创建一个新的dist文件夹,然后将其移动到需要通过GlassFish服务器提供的任何位置

从那里,我调用了我的rest接口,而没有遇到任何CORS问题


我的rest/后端项目是用Maven构建的,是一场战争。

您可以使用
前端Maven插件将前端构建步骤捆绑到Maven构建中。只需执行使用此Maven插件构建Vue应用程序的命令(例如,
npm run build
),然后将
.war
文件配置为包含
dist
文件夹作为web资源

我对在Payara上运行的React+Jakarta EE应用程序(类似于Glassfish)也做了同样的设置(您可能需要将其调整到您的文件夹结构):


雅加达ee react文件处理
com.github.eirslett
源代码也可以在上获得

<project>

  <!-- dependencies like seen above -->

  <build>
    <finalName>jakarta-ee-react-file-handling</finalName>
    <plugins>
      <plugin>
        <groupId>com.github.eirslett</groupId>
        <artifactId>frontend-maven-plugin</artifactId>
        <version>1.8.0</version>
        <executions>
          <execution>
            <id>install node and npm</id>
            <goals>
              <goal>install-node-and-npm</goal>
            </goals>
            <phase>generate-resources</phase>
          </execution>
          <execution>
            <id>npm install</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <phase>generate-resources</phase>
            <configuration>
              <arguments>install</arguments>
            </configuration>
          </execution>
          <execution>
            <id>npm test</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <phase>generate-resources</phase>
            <configuration>
              <environmentVariables>
                <CI>true</CI>
              </environmentVariables>
              <arguments>test</arguments>
            </configuration>
          </execution>
          <execution>
            <id>npm build</id>
            <goals>
              <goal>npm</goal>
            </goals>
            <phase>generate-resources</phase>
            <configuration>
              <environmentVariables>
                <CI>true</CI>
              </environmentVariables>
              <arguments>run build</arguments>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <workingDirectory>src/main/frontend</workingDirectory>
          <nodeVersion>v12.13.1</nodeVersion>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.22.2</version>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.3</version>
        <configuration>
          <webResources>
            <resource>
              <directory>${project.basedir}/src/main/frontend/build</directory>
            </resource>
          </webResources>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>