使用Java和Vue创建Web应用程序的更好方法

时间:2017-08-20 05:18:21

标签: java node.js maven vue.js spark-framework

我开始进入网络开发了一点点。目前,我将Spark框架与Vue一起用于我所创建的少数应用程序。虽然这确实有效,但它并不理想。

该项目是使用Maven(和NPM for Vue)构建的,构建过程看起来像这样。

  1. Maven打包Spark Framework Java应用程序
  2. Maven(和 frontend-maven-plugin)下载node / npm并构建Vue 前端
  3. Maven将已编译的资源作为静态资产复制到jar中
  4. 所以文件系统看起来像这样

    / src / main / java(Spark Framework)

    / src / main / resources(Vue)

    这会引起一些烦恼。

    1. 一切都在一个存储库中。理想情况下,我能够为项目的每一层都有一个单独的仓库(一个用于Java,一个用于Vue)
    2. 开发工作流程并不理想。如果我只是想测试应用程序的Java部分,我仍然花时间编译前端(Vue)
    3. 一个小问题,但在IDE中工作时,我处理的是深层嵌套文件夹。无论何时我想编辑前端,我的文件夹结构看起来像/ src / main / resources / project-vue /
    4. Here's one of my projects that uses this model

      所以我的问题是:什么是构建我的应用程序的更好方法?

1 个答案:

答案 0 :(得分:2)

我有几个月的时间去思考,在那段时间里,我已经用Vue创建了一些应用程序,这是我开始采用的工作流程。

我为任何具有多个图层的项目创建了一个GitHub组织。例如,我的许多项目都有一个用Java或JavaScript编写的REST API,以及一个带Vue的Web界面。该组织将包含每个层的存储库。对于遵循这一想法的组织来说,link就是这样。

这允许我分离我的后端和前端,但它复杂的部署。我不能再使用与API相同的Web服务器来提供我的Vue文件,但进一步认为这可能是一件好事。

使用这种模式,我可以在Amazon S3上托管我的静态Vue站点,这非常便宜,并使用Heroku的免费dynos来托管我的API。